Azure Remote Rendering (ARR) 샘플 기능 모음
10215 단어 AzureRemoteRenderingUnity
이 기사에 대하여
Azure Remote Rendering은 3D 모델을 최고의 품질로 Mixed Reality 디바이스에서 경험할 수 있습니다. Azure의 컴퓨팅 능력을 활용하여 클라우드에서 렌더링하고 그렇게 하여 디바이스로 스트리밍할 수 있습니다. 이런 방식으로 각 사용자는 3D 모델과 최대 세부 사항으로 작업하고 협업할 수 있습니다. 이 기사에서는 ARR 문서의 샘플에 기능을 정리하겠습니다.
조건
Azure Remote Rendering 튜토리얼을 완성.
튜토리얼 : 소재, 조명 및 효과 조정까지만 OK!
모델 선택
이 Model Path의 입력에 자신의 모델의 링크 (Arr 파일) 넣어 주세요.
모델 준비하지 않았던 경우는 이 디폴트 링크 있어도 괜찮습니다.
"builtin://Engine"
아래 샘플은 MRTK의 REST API를 사용하여 ARR 파일을 Model Path 입력에 자동으로 넣습니다.
ArrDownloader.csusing System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Microsoft.MixedReality.Toolkit.Utilities;
using TMPro;
using UnityEngine.UI;
public class ArrDownloader : MonoBehaviour
{
string endpoint = "<こちらは自分のエンドポイント>";
string authorizationKey = "<自分のキー>"
public GameObject modelSlot;
[System.Serializable]
public class SasUrl{
public string results;
}
private void Awake() {
getSas();
}
async void getSas(){
Response response = new Response();
try{
var headers = new Dictionary<string, string>();
headers.Add("x-api-key", authorizationKey);
var parameters = new Dictionary<string, string>();
response = await Rest.GetAsync(endpoint, headers, -1, null, true);
if (!response.Successful)
{
debugText.text = "サーバーにアクセスできません。#0031";
return;
}
//Debug.Log(response.ResponseBody);
var sasUrl = JsonUtility.FromJson<SasUrl>(response.ResponseBody);
Debug.Log(sasUrl.results);
modelSlot.GetComponent<RemoteRenderedModel>().ModelPath = sasUrl.results;
}
catch (Exception e)
{
Debug.LogError(e.Message);
debugText.text = "サーバーにアクセスできません。#0032";
return;
}
}
}
조작
MRTK의 환경과 같이 Editor에서 키보드 「스페이스」를 누르면 핸드 포인터가 나온다. 핸드 포인터에서 왼쪽 클릭하면 버튼을 누를 수 있습니다. 마우스 오른쪽 버튼을 클릭하면 움직이면 머리를 회전하도록 뷰를 회전합니다.
앱이 실행되면 Connect 버튼으로 세션을 시작합니다.
세션을 만듭니다. 평소에는 2-3분이 걸렸지만 최대 5분 정도 걸릴지도 모릅니다.
참고 : 세션 시작이 너무 깁니다.
세션이 연결되면 모델이 자동으로 표시됩니다.
키보드에서 "m"버튼을 누르면 조작 UI를 왼손으로 이동합니다.
조작의 샘플입니다.
기능
Azure Remote Rendering 기능은 다음 섹션에서 설명합니다.
모델 도구
우선은 스트리밍 된 모델이 조종하는 도구를 설명합니다.
Load/Unload
Load/Unload 버튼은 렌더링된 모델을 표시하면 표시되지 않는 버튼입니다.
Edit Material
Azure Remote Rendering 모델의 Material을 변경할 수 있습니다. 이 예에서 모델은 너무 간단하며 변경할 수 있는 것은 선택 사항이 아닙니다. 이번에는 다른 모델로 사용해 보겠습니다.
이 아래의 예에서는 더 복잡한 모델을 경험했습니다.
Hierarchical State Override
Hierarchical State Override는 각 객체를 조작할 수 있습니다.
이 또 다른 영상으로 자동차 부분을 숨길 수있었습니다.
Lock/Unlock
이 기능을 사용하면 모델의 상태를 잠그고 조작 할 수 없습니다.
Session Tools
Session Tools란 ARR 세션의 환경을 조종한다. 각 도구에는 별도의 기능이 있습니다. 각 기능에서 스트리밍된 모델에 영향을 줍니다.
Cut Planes
Cut Planes는 평면 객체입니다. 이 평면에서 잘린 부분을 표시하지 않습니다. 그래서 모델 내용을 볼 수 있습니다.
Directional Light
Directional Light는 빛의 근원을 색을 바꿀 수 있습니다. 빛의 소스를 변경하면 객체의 색상도 영향을받습니다.
Skybox
Skybox는 장면 전체의 환경입니다. 이것을 조종하는 경우, 자신의 모델을 각각의 환경에서 차이가 보입니다.
Reference
이 문제에 관하여(Azure Remote Rendering (ARR) 샘플 기능 모음), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/brocolly/items/4eae6e8c342ec996073d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Azure Remote Rendering 튜토리얼을 완성.
튜토리얼 : 소재, 조명 및 효과 조정까지만 OK!
모델 선택
이 Model Path의 입력에 자신의 모델의 링크 (Arr 파일) 넣어 주세요.
모델 준비하지 않았던 경우는 이 디폴트 링크 있어도 괜찮습니다.
"builtin://Engine"
아래 샘플은 MRTK의 REST API를 사용하여 ARR 파일을 Model Path 입력에 자동으로 넣습니다.
ArrDownloader.csusing System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Microsoft.MixedReality.Toolkit.Utilities;
using TMPro;
using UnityEngine.UI;
public class ArrDownloader : MonoBehaviour
{
string endpoint = "<こちらは自分のエンドポイント>";
string authorizationKey = "<自分のキー>"
public GameObject modelSlot;
[System.Serializable]
public class SasUrl{
public string results;
}
private void Awake() {
getSas();
}
async void getSas(){
Response response = new Response();
try{
var headers = new Dictionary<string, string>();
headers.Add("x-api-key", authorizationKey);
var parameters = new Dictionary<string, string>();
response = await Rest.GetAsync(endpoint, headers, -1, null, true);
if (!response.Successful)
{
debugText.text = "サーバーにアクセスできません。#0031";
return;
}
//Debug.Log(response.ResponseBody);
var sasUrl = JsonUtility.FromJson<SasUrl>(response.ResponseBody);
Debug.Log(sasUrl.results);
modelSlot.GetComponent<RemoteRenderedModel>().ModelPath = sasUrl.results;
}
catch (Exception e)
{
Debug.LogError(e.Message);
debugText.text = "サーバーにアクセスできません。#0032";
return;
}
}
}
조작
MRTK의 환경과 같이 Editor에서 키보드 「스페이스」를 누르면 핸드 포인터가 나온다. 핸드 포인터에서 왼쪽 클릭하면 버튼을 누를 수 있습니다. 마우스 오른쪽 버튼을 클릭하면 움직이면 머리를 회전하도록 뷰를 회전합니다.
앱이 실행되면 Connect 버튼으로 세션을 시작합니다.
세션을 만듭니다. 평소에는 2-3분이 걸렸지만 최대 5분 정도 걸릴지도 모릅니다.
참고 : 세션 시작이 너무 깁니다.
세션이 연결되면 모델이 자동으로 표시됩니다.
키보드에서 "m"버튼을 누르면 조작 UI를 왼손으로 이동합니다.
조작의 샘플입니다.
기능
Azure Remote Rendering 기능은 다음 섹션에서 설명합니다.
모델 도구
우선은 스트리밍 된 모델이 조종하는 도구를 설명합니다.
Load/Unload
Load/Unload 버튼은 렌더링된 모델을 표시하면 표시되지 않는 버튼입니다.
Edit Material
Azure Remote Rendering 모델의 Material을 변경할 수 있습니다. 이 예에서 모델은 너무 간단하며 변경할 수 있는 것은 선택 사항이 아닙니다. 이번에는 다른 모델로 사용해 보겠습니다.
이 아래의 예에서는 더 복잡한 모델을 경험했습니다.
Hierarchical State Override
Hierarchical State Override는 각 객체를 조작할 수 있습니다.
이 또 다른 영상으로 자동차 부분을 숨길 수있었습니다.
Lock/Unlock
이 기능을 사용하면 모델의 상태를 잠그고 조작 할 수 없습니다.
Session Tools
Session Tools란 ARR 세션의 환경을 조종한다. 각 도구에는 별도의 기능이 있습니다. 각 기능에서 스트리밍된 모델에 영향을 줍니다.
Cut Planes
Cut Planes는 평면 객체입니다. 이 평면에서 잘린 부분을 표시하지 않습니다. 그래서 모델 내용을 볼 수 있습니다.
Directional Light
Directional Light는 빛의 근원을 색을 바꿀 수 있습니다. 빛의 소스를 변경하면 객체의 색상도 영향을받습니다.
Skybox
Skybox는 장면 전체의 환경입니다. 이것을 조종하는 경우, 자신의 모델을 각각의 환경에서 차이가 보입니다.
Reference
이 문제에 관하여(Azure Remote Rendering (ARR) 샘플 기능 모음), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/brocolly/items/4eae6e8c342ec996073d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Microsoft.MixedReality.Toolkit.Utilities;
using TMPro;
using UnityEngine.UI;
public class ArrDownloader : MonoBehaviour
{
string endpoint = "<こちらは自分のエンドポイント>";
string authorizationKey = "<自分のキー>"
public GameObject modelSlot;
[System.Serializable]
public class SasUrl{
public string results;
}
private void Awake() {
getSas();
}
async void getSas(){
Response response = new Response();
try{
var headers = new Dictionary<string, string>();
headers.Add("x-api-key", authorizationKey);
var parameters = new Dictionary<string, string>();
response = await Rest.GetAsync(endpoint, headers, -1, null, true);
if (!response.Successful)
{
debugText.text = "サーバーにアクセスできません。#0031";
return;
}
//Debug.Log(response.ResponseBody);
var sasUrl = JsonUtility.FromJson<SasUrl>(response.ResponseBody);
Debug.Log(sasUrl.results);
modelSlot.GetComponent<RemoteRenderedModel>().ModelPath = sasUrl.results;
}
catch (Exception e)
{
Debug.LogError(e.Message);
debugText.text = "サーバーにアクセスできません。#0032";
return;
}
}
}
MRTK의 환경과 같이 Editor에서 키보드 「스페이스」를 누르면 핸드 포인터가 나온다. 핸드 포인터에서 왼쪽 클릭하면 버튼을 누를 수 있습니다. 마우스 오른쪽 버튼을 클릭하면 움직이면 머리를 회전하도록 뷰를 회전합니다.
앱이 실행되면 Connect 버튼으로 세션을 시작합니다.
세션을 만듭니다. 평소에는 2-3분이 걸렸지만 최대 5분 정도 걸릴지도 모릅니다.
참고 : 세션 시작이 너무 깁니다.
세션이 연결되면 모델이 자동으로 표시됩니다.
키보드에서 "m"버튼을 누르면 조작 UI를 왼손으로 이동합니다.
조작의 샘플입니다.
기능
Azure Remote Rendering 기능은 다음 섹션에서 설명합니다.
모델 도구
우선은 스트리밍 된 모델이 조종하는 도구를 설명합니다.
Load/Unload
Load/Unload 버튼은 렌더링된 모델을 표시하면 표시되지 않는 버튼입니다.
Edit Material
Azure Remote Rendering 모델의 Material을 변경할 수 있습니다. 이 예에서 모델은 너무 간단하며 변경할 수 있는 것은 선택 사항이 아닙니다. 이번에는 다른 모델로 사용해 보겠습니다.
이 아래의 예에서는 더 복잡한 모델을 경험했습니다.
Hierarchical State Override
Hierarchical State Override는 각 객체를 조작할 수 있습니다.
이 또 다른 영상으로 자동차 부분을 숨길 수있었습니다.
Lock/Unlock
이 기능을 사용하면 모델의 상태를 잠그고 조작 할 수 없습니다.
Session Tools
Session Tools란 ARR 세션의 환경을 조종한다. 각 도구에는 별도의 기능이 있습니다. 각 기능에서 스트리밍된 모델에 영향을 줍니다.
Cut Planes
Cut Planes는 평면 객체입니다. 이 평면에서 잘린 부분을 표시하지 않습니다. 그래서 모델 내용을 볼 수 있습니다.
Directional Light
Directional Light는 빛의 근원을 색을 바꿀 수 있습니다. 빛의 소스를 변경하면 객체의 색상도 영향을받습니다.
Skybox
Skybox는 장면 전체의 환경입니다. 이것을 조종하는 경우, 자신의 모델을 각각의 환경에서 차이가 보입니다.
Reference
이 문제에 관하여(Azure Remote Rendering (ARR) 샘플 기능 모음), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/brocolly/items/4eae6e8c342ec996073d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Azure Remote Rendering (ARR) 샘플 기능 모음), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/brocolly/items/4eae6e8c342ec996073d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)