Mixed Reality設計語言 (MRDL) 是類似Fluent的設計語言,但已考慮Mixed Reality。 多年來,MRDL 隨著 HoloLens 的每個反復專案以及 Mesh 應用程式等產品而演進。
圖形工具是建置的,可更妥善地共用用來建置 MRDL 使用者介面元件的工具和程式。 圖形工具套件的設計目的是透過著色器、紋理、材質、模型、腳本和工具,將 MRDL 概念反升至所有Mixed Reality應用程式。
哪裡可以找到 MRDL 元件?
提示
正在尋找完整的 MRDL 設計元件嗎? 請查看 MRTK中的較高層級 UX 套件。
在下列位置可以找到提供 MRDL 電源的著色器和資產:
著色器
每個材質偵測器的第一個選項都包含著色器下拉式清單。 所有圖形工具著色器都在 命名空間內 Graphics Tools 。 大部分的 MRDL 著色器位於 Graphics Tools/Canvas 和 Graphics Tools/Non-Canvas 著色器命名空間中。 如名稱所示,命名空間中的 Canvas 著色器應該與 UnityUI 畫布搭配使用,而命名空間中的 Non-Canvas 著色器應該在一般 Unity 內容中使用。
提示
如果您對等互連這些著色器的原始程式碼,您可能會注意到它們比即使是傳統的著色器更難閱讀。 這是因為它們是從工具產生的。
材質
在 [執行時間/材質 ] 資料夾中,您會發現代表上述每個著色器的材質。 這些材質會用於常見的使用者介面元件。 某些材質參考特定效果所需的紋理,例如 iridescence。
模型
某些模型位於 [執行時間/模型] 資料夾中。 這些模型用於非畫布材質。
提示
大部分畫布模型都是以程式設計方式在程式碼中產生。
何時應該使用一個 MRDL 元件與另一個元件?
圖形工具支援兩種使用者介面建立方法:UnityUI 和傳統遊戲物件。 不過,建議您查看 範例資產,但下列清單可作為參考。
下列互動式遊樂場示範如何使用 MRDL 元件來建立按鈕。
背板
提供要放置之使用者介面元素的不透明支援。
| 資產 | 畫布 | 非畫布 |
|---|---|---|
| 著色器 | 圖形工具/畫布/背板 | 圖形工具/非畫布/背板 |
| Material | CanvasBackplate | 非 CanvasBackplate |
| 腳本 (s) /Model (s) | CanvasElementRoundedRect.cs | 背板8 |
前板
在背板上方顯示半透明表面,以顯示音量和鄰近光源。
| 資產 | 畫布 | 非畫布 |
|---|---|---|
| 著色器 | 圖形工具/畫布/前板 | 圖形工具/非畫布/前板 |
| Material | CanvasFrontplate | 非 CanvasFrontplate |
| 腳本 (s) /Model (s) | RawImage.cs/ScaleMeshEffect.cs | Frontplate8 |
輝光
與能供性互動時的小型醒目提示。
| 資產 | 畫布 | 非畫布 |
|---|---|---|
| 著色器 | 圖形工具/畫布/光暈 | 圖形工具/非畫布/光暈 |
| Material | CanvasFrontplate | 非 CanvasFrontplate |
| 腳本 (s) /Model (s) | RawImage.cs/ScaleMeshEffect.cs | 四 (Unity 預設) |
四光暈
間接與能供性互動時,較大的光暈。
| 資產 | 畫布 | 非畫布 |
|---|---|---|
| 著色器 | 圖形工具/畫布/四面光暈 | 圖形工具/非畫布/四面光暈 |
| Material | CanvasQuadGlow | 非 CanvasQuadGlow |
| 腳本 (s) /Model (s) | RawImage.cs/ScaleMeshEffect.cs | 四 (Unity 預設) |
斜面斜面矩形
類似于背板,但提供具有斜面邊緣的矩形。
| 資產 | 畫布 | 非畫布 |
|---|---|---|
| 著色器 | 圖形工具/畫布/斜面 | 圖形工具/非畫布/斜面 |
| Material | BevCanvasBeveled | 非 CanvasBeveled |
| 腳本 (s) /Model (s) | CanvasElementBeveledRect.cs | Beveled4x4、Beveled6x6、Beveled8x4、Beveled8x8 |