XGRIDSDocs
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • Polski
  • Nederlands
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • Polski
  • Nederlands
  • Seria Lixel PortalCam

    • PortalCam P1

      • Przegląd produktu
      • Podstawowa obsługa
      • Korzystanie z aplikacji LCC Scan
      • Konserwacja i pielęgnacja
      • FAQ
  • Seria Lixel K

    • Lixel K1

      • Przegląd produktu
      • Podstawowa obsługa
      • Aktywacja i połączenie urządzenia
      • Przebieg skanowania
      • Pozyskiwanie danych chmury punktów ze współrzędnymi bezwzględnymi
      • Fuzja map
      • Zalecenia dotyczące planowania trasy dla typowych scen
      • Środki ostrożności
      • FAQ
    • Lixel K2

      • Przegląd produktu
      • Podstawowa obsługa
      • Aktywacja i połączenie urządzenia
      • Przebieg skanowania
      • Pozyskiwanie danych chmury punktów ze współrzędnymi bezwzględnymi
      • Fuzja map
      • Zalecenia dotyczące planowania trasy dla typowych scen
      • Środki ostrożności
      • FAQ
  • Seria Lixel L

    • Lixel L2 Pro

      • Przegląd produktu
      • Podstawowa obsługa
      • Aktywacja i połączenie urządzenia
      • Proces skanowania
      • Pozyskiwanie danych chmury punktów ze współrzędnymi bezwzględnymi
      • Punkt pomiarowy
      • Dodatek
      • FAQ
    • Lixel L3

      • Przegląd produktu
      • Podstawowe funkcje urządzenia
      • Aktywacja i połączenie urządzenia
      • Przechwytywanie danych
      • Przechwytywanie współrzędnych bezwzględnych
      • Dodatek
  • Lixel Studio

    • Wersja i prawa autorskie
    • Instalacja i aktywacja
    • Interfejs oprogramowania
    • Operacje na plikach
    • Przetwarzanie projektu
    • Narzędzia
    • Rysowanie 2D
    • Zastosowania
    • Ustawienia
    • Połączenie z urządzeniem
  • 07-plugin-sdk

    • Unity

      • Wprowadzenie do Unity SDK
      • Funkcje techniczne
      • Wymagania środowiska deweloperskiego
      • Przewodnik szybkiego startu dla PC
      • Przewodnik optymalizacji ustawień projektu
      • Przewodnik deweloperski dla Pico 4 Ultra
      • Przewodnik strumieniowania PC dla Pico 4 Ultra
      • Przewodnik deweloperski dla Quest 3
      • Przewodnik strumieniowania PC dla Quest 3
      • Przewodnik deweloperski dla OpenXR
      • Przewodnik Business Streaming dla Pico 4 Ultra
      • Słownik
      • Często zadawane pytania (FAQ)
      • Skontaktuj się z nami
      • Przewodnik programowania funkcji

        • Przewodnik mieszanego renderowania wielu scen
        • Przewodnik odbierania cieni
        • Przewodnik oświetlenia w czasie rzeczywistym
        • Przewodnik renderowania wielokamerowego
        • Przewodnik renderowania obrazów wysokiej rozdzielczości
        • Przewodnik zgodności formatów danych LCC i LCC2
        • Przewodnik efektu ładowania
        • Przewodnik przełączania trybu renderowania Mip
        • Przewodnik przyciągania do krawędzi i narożników
        • Przewodnik dekala projekcyjnego
        • Przewodnik wideo dekala projekcyjnego
        • Przewodnik podświetlania
        • Przewodnik przycinania w czasie rzeczywistym
        • Przewodnik korekcji kolorów
        • Przewodnik pobierania danych siatki sceny
        • Przewodnik trybu edytora
        • Przewodnik konfiguracji parametrów wydajności renderowania
        • Przewodnik współpakowania aplikacji i danych
        • Przewodnik systemu kolizji
        • Przewodnik problemów z uprawnieniami w deweloperstwie na macOS
        • Przewodnik kompilacji i pakowania na urządzenia iOS
      • Dokumentacja API

        • LCCManager
        • Renderer
        • Typy danych
      • Dziennik zmian

        • v2.3.0
        • v2.2.10
        • v2.2.0
        • v2.1.19
        • v2.0.14

Przewodnik Business Streaming dla Pico 4 Ultra

Business Streaming dla Pico 4 Ultra renderuje projekt Unity na PC i strumieniuje go na urządzenie w celu przeglądania i interakcji za pomocą oficjalnego narzędzia PICO Business Streaming, wykorzystując moc obliczeniową PC do osiągnięcia wyższej wydajności niż renderowanie na urządzeniu. Ten przewodnik wyjaśnia, jak zintegrować LCC Unity SDK i ukończyć tworzenie strumieniowania z Business Streaming.

Wymagania dotyczące wersji

Wersje oprogramowania i wtyczek używane w tym przewodniku są następujące. Zaleca się tworzenie z użyciem tych samych wersji; inne, nieprzetestowane wersje mogą mieć problemy ze zgodnością:

Oprogramowanie / WtyczkaWersjaOpis
Unityv6000.0.69f1 i nowszeUżywa Unity 6
OpenXR1.61.1 i nowszeWtyczka Unity OpenXR, instalowana z Unity Registry
LCC Unity SDKv2.3.0 i nowszePobierz ze strony pobierania LCC Unity SDK
Business Streamingv2.2.0 i nowszePobierz z oficjalnej strony PICO

Uwaga:

  1. Business Streaming łączy się przez OpenXR, co różni się od Przewodnika deweloperskiego dla Pico 4 Ultra, który używa PICO Unity Integration SDK; nie mieszaj ich ze sobą.
  2. Wersja Unity, wersja OpenXR i wersja LCC SDK wpływają na renderowanie i wydajność, więc staraj się utrzymywać wersje oprogramowania spójne z tym przewodnikiem.

Przepływ pracy deweloperskiej

Krok 1: Wymagania wstępne

Pobierz i zainstaluj Business Streaming v2.2.0 lub nowszy zarówno na komputerze, z którego będziesz strumieniować, jak i na urządzeniu Pico 4 Ultra; po instalacji zaleca się jednokrotne ponowne uruchomienie komputera.

Krok 2: Utwórz projekt URP

Wybierz typ Uniwersalny 3D (potok renderowania URP) w szablonie projektu, jak pokazano poniżej:

Utwórz projekt Uniwersalny 3D

Utwórz projekt Uniwersalny 3D

Krok 3: Zaimportuj Unity OpenXR

Otwórz okno UPM przez menu Unity Okno → Menedżer pakietów, wybierz Unity Registry na liście po lewej stronie, wpisz OpenXR w polu wyszukiwania, wybierz OpenXR Plugin z wyników wyszukiwania i zainstaluj go, jak pokazano poniżej:

Zainstaluj wtyczkę OpenXR Plugin z Unity Registry

Zainstaluj wtyczkę OpenXR Plugin z Unity Registry

Krok 4: Zaimportuj LCC Unity SDK

Otwórz okno UPM przez menu Unity Okno → Menedżer pakietów, kliknij + po lewej stronie, wybierz Zainstaluj pakiet z dysku z menu rozwijanego, znajdź LCC Unity SDK i wybierz plik package.json, aby go zaimportować, jak pokazano poniżej:

Zaimportuj LCC Unity SDK przez Zainstaluj pakiet z dysku

Zaimportuj LCC Unity SDK przez Zainstaluj pakiet z dysku

Uwaga: po ukończeniu powyższych kroków uruchom ponownie Unity przed przejściem do kolejnych ustawień.

Krok 5: Skonfiguruj środowisko Unity

Skonfiguruj XR Plug-in Management

Wybierz Plik → Ustawienia projektu z paska menu Unity, po lewej stronie wybierz Zarządzanie wtyczkami XR, zaznacz Zainicjuj XR przy uruchomieniu na karcie Ustawienia Standalone PC, Mac i Linux i zaznacz OpenXR jako dostawcę wtyczki, jak pokazano poniżej:

Zaznacz Zainicjuj XR przy uruchomieniu i OpenXR w Zarządzaniu wtyczkami XR

Zaznacz Zainicjuj XR przy uruchomieniu i OpenXR w Zarządzaniu wtyczkami XR

Uwaga: jeśli po OpenXR pojawi się żółta ikona ostrzeżenia, kliknij Napraw wszystko, aby naprawić wszystko.

Wybierz pozycję OpenXR w sekcji Zarządzanie wtyczkami XR i ustaw Tryb renderowania na Single Pass Instanced lub Multi Pass w zależności od potrzeb; ogólnie Single Pass Instanced zapewnia lepszą wydajność, a pozostałe ustawienia pozostają domyślne, jak pokazano poniżej:

Ustaw Tryb renderowania OpenXR na Single Pass Instanced lub Multi Pass

Ustaw Tryb renderowania OpenXR na Single Pass Instanced lub Multi Pass

Skonfiguruj API graficzne

Otwórz panel ustawień przez Edycja → Ustawienia projektu → Odtwarzacz, wybierz pozycję Inne na karcie odpowiedniej platformy i skonfiguruj API graficzne dla każdej platformy:

PlatformaCzynność
WindowsOdznacz Automatyczny API grafiki dla systemu Windows i dodaj DirectX12, Vulkan oraz DirectX11 jako trzy API graficzne
macOSOdznacz Automatyczny API grafiki dla Mac i zachowaj API graficzne Metal
LinuxOdznacz Automatyczny API grafiki dla Linux i zachowaj API graficzne Vulkan

Uwaga: na platformie Windows zaleca się używanie DirectX12 lub Vulkan, które zapewniają lepszą wydajność; w przypadku DirectX11 zaleca się włączenie renderowania HDR, aby uniknąć artefaktów renderowania.

Krok 6: Utwórz scenę

Ten przykład zaczyna się od zupełnie nowej sceny. Utwórz scenę Unity (Scena), kliknij prawym przyciskiem myszy w pustym obszarze okna hierarchii (Hierarchia) i wybierz XR → Przekształć kamerę główną w XR Rig z menu podręcznego, aby przekształcić Kamerę główną w kamerę XR.

Krok 7: Skonfiguruj scenę

Wybierz GameObject XR Rig w oknie hierarchii (Hierarchia) i w oknie właściwości (Inspektor) ustaw Żądany tryb śledzenia właściwości Przesunięcie kamery na Podłoga, jak pokazano poniżej:

Ustaw Żądany tryb śledzenia Przesunięcia kamery XR Rig na Podłoga

Ustaw Żądany tryb śledzenia Przesunięcia kamery XR Rig na Podłoga

Wybierz GameObject XR Rig → Przesunięcie kamery → Kamera główna w oknie hierarchii (Hierarchia) i ustaw właściwości komponentu Kamera w oknie właściwości (Inspektor): Płaszczyzny przycinania Blisko = 0.3, Daleko = 5000; Wygładzanie krawędzi = Bez wygładzania krawędzi; Tekstura nieprzezroczysta = Wyłączone, Tekstura głębi = Wyłączone; Typ tła = Jednolity kolor, Tło = czarny; Renderowanie HDR = Wyłączone, MSAA = Wyłączone, URP Dynamic Resolution = Wyłączone, jak pokazano poniżej:

Ustaw właściwości komponentu Kamera Kamery głównej pod XR Rig

Ustaw właściwości komponentu Kamera Kamery głównej pod XR Rig

Krok 8: Napisz kod, aby załadować scenę

Kliknij prawym przyciskiem myszy Utwórz pusty w oknie hierarchii (Hierarchia), aby utworzyć pusty obiekt, nazwij go LCCManager, znormalizuj jego Transform i dołącz skrypt LCCManager przez Dodaj komponent, jak pokazano poniżej:

Utwórz pusty obiekt LCCManager i dołącz skrypt LCCManager

Utwórz pusty obiekt LCCManager i dołącz skrypt LCCManager

Kliknij prawym przyciskiem myszy Utwórz pusty w oknie hierarchii (Hierarchia), aby utworzyć kolejny pusty obiekt, nazwij go LCCRenderer i ustaw jego Transform Rotation.x = -90, Scale.x = -1, jak pokazano poniżej:

Utwórz pusty obiekt LCCRenderer i ustaw Transform do wyrównania układu współrzędnych

Utwórz pusty obiekt LCCRenderer i ustaw Rotation.x = -90 oraz Scale.x = -1, aby wyrównać układy współrzędnych

Rotation.x = -90 i Scale.x = -1 to transformacja wyrównująca z układu współrzędnych danych LCC (prawoskrętny z osią Z w górę) do układu współrzędnych Unity (lewoskrętny z osią Y w górę); zobacz „Układ współrzędnych danych LCC" w Wprowadzenie do Unity SDK.

Napisz skrypt C# o nazwie LCCRenderer.cs z następującym kodem:

using LCCCore;
using UnityEngine;

[DefaultExecutionOrder(100)]
public class LCCRenderer : MonoBehaviour
{
    public LCCManager m_manager;
    public string m_FilePath;
    private LCCCore.Renderer m_renderer;
    private Camera m_mainCamera;
    private bool m_isLoaded = false;

    void Start()
    {
        m_mainCamera = Camera.main;
        // ustaw typ platformy na PCVR
        m_manager.SetPlatformType(PlatformType.PCVR);
        m_manager.SetMainCamera(m_mainCamera);
        m_manager.SetLockFPS(false);
        //Ustaw pełny render splat na 15 milionów, co oznacza, że LCC LOD0 > 15 milionów przejdzie na ścieżkę renderowania fragmentami.
        //m_manager.SetFullRenderSplat(1500);
        //Ustaw maksymalny render splat na 15 milionów, co oznacza limit splatów na ekranie do 15 milionów na ścieżce renderowania fragmentami.
        //m_manager.SetMaxRenderSplats(1500);
        m_renderer = m_manager.GetRender(this.transform);
        if (m_renderer == null)
            Debug.LogError("GetRender nie powiódł się; sprawdź, czy menedżer jest ustawiony poprawnie i czy ścieżka pliku jest prawidłowa.");
        m_renderer.Load(m_FilePath, onLoadProgress, onLoadCallback, onError);
    }

    private void onLoadProgress(float value)
    {
        Debug.Log($"postęp ładowania: {value}");
    }

    private void onLoadCallback()
    {
        //ustaw początkowy LOD na 2, co oznacza, że początkowe renderowanie będzie na poziomie LOD2.
        //m_manager.SetStartLod(2);
        Debug.Log("dane załadowane !!!");
        m_isLoaded = true;
    }

    private void onError(string error)
    {
        Debug.LogError($"błąd ładowania: {error}");
    }
}

Dołącz skrypt do GameObject LCCRenderer w oknie hierarchii (Hierarchia), następnie przeciągnij GameObject LCCManager na właściwość Manager skryptu w oknie właściwości (Inspektor), a na koniec wpisz ścieżkę pliku LCC.

Po ukończeniu powyższej konfiguracji struktura sceny w oknie hierarchii (Hierarchia) wygląda jak pokazano poniżej:

Struktura sceny po konfiguracji

Struktura sceny po konfiguracji

Uwaga: scena musi zachować Światło kierunkowe, Global Volume i inne obiekty tworzone domyślnie w projekcie URP.

Krok 9: Skonfiguruj Business Streaming

Uruchom Business Streaming na komputerze, wybierz Ustawienia → Ogólne i ustaw Domyślny typ strumieniowania na Strumieniowanie OpenXR, jak pokazano poniżej:

Ustaw Domyślny typ strumieniowania Business Streaming na Strumieniowanie OpenXR

Ustaw Domyślny typ strumieniowania Business Streaming na Strumieniowanie OpenXR

Krok 10: Rozpocznij strumieniowanie

  1. Połącz Pico 4 Ultra z komputerem przez USB 3.0 lub szybkie Wi-Fi.
  2. Otwórz Business Streaming na urządzeniu Pico 4 Ultra i połącz się z komputerem.
  3. Kliknij przycisk Odtwórz w Edytorze Unity, aby uruchomić, lub otwórz opublikowaną aplikację, aby rozpocząć strumieniowanie.

Uwaga:

  1. Korzystanie z oprogramowania Business Streaming znajdziesz w oficjalnej dokumentacji PICO: https://business.picoxr.com/cn/doc/Business-Streamingv2.
  2. Ustawienia projektu znajdziesz w Przewodnik optymalizacji ustawień projektu.
  3. Strumieniowanie wymaga sprzętu PC z wyższej półki (zwłaszcza karty graficznej); używaj wydajnego komputera do strumieniowania oraz USB 3.0 lub szybkiego Wi-Fi.
  4. Strumieniowanie PCVR renderuje dwukrotnie (tryb SPI ma również podwojony narzut wierzchołków), więc wydajność i liczbę klatek można poprawić, konfigurując renderowanie pełne/fragmentami, maksymalną liczbę renderowanych na ekran, początkowy poziom LOD itp.; ustawienia parametrów znajdziesz w Przewodnik parametrów wydajności renderowania.

Powiązane materiały

  • Ustawienia projektu i optymalizację wydajności znajdziesz w rozdziałach Przewodnik optymalizacji ustawień projektu i Przewodnik parametrów wydajności renderowania.
  • Przepływ pracy renderowania na urządzeniu z użyciem PICO Unity Integration SDK znajdziesz w Przewodniku deweloperskim dla Pico 4 Ultra.
  • Inne instrukcje korzystania z Business Streaming znajdziesz w oficjalnej dokumentacji PICO: Business Streaming.