Omówienie modyfikatorów podprzestrzeni

Obsługiwane urządzenia z XR
Te wskazówki pomogą Ci tworzyć aplikacje na te typy urządzeń z XR.
Gogle XR
Przewodowe okulary XR

SubspaceModifier jest podobny do modyfikatora Compose dla elementów kompozycyjnych w Subspace. SubspaceModifier umożliwia manipulowanie elementami kompozycyjnymi w przestrzeni 3D, co pomaga w pozycjonowaniu, obracaniu i dodawaniu zachowań do węzłów układu 3D.

Układ

Domyślnie Subspace jest ograniczony przez zalecaną przestrzeń do wyświetlania aplikacji. Te granice są używane podczas pomiaru układu komponentów podprzestrzeni , podobnie jak granice w układach Compose 2D.

Wypełnij granice

Modyfikatory fillMaxSize, fillMaxWidth, fillMaxHeight i fillMaxDepth powodują, że treść (częściowo) wypełnia granice elementu nadrzędnego. Używanie modyfikatorów wypełnienia pomaga w układzie treści aplikacji, która jest niezależna od charakterystyki wyświetlacza urządzenia z XR.

Ustawianie rozmiaru i wymaganego rozmiaru

Modyfikatory size, width, height i depth określają preferowany rozmiar treści. Aby zadeklarować dokładny rozmiar treści, użyj requiredSize, requiredWidth, requiredHeight i requiredDepth. Te jednostki muszą być określone w dp; aby przekonwertować metry na dp, użyj Meter.toDp().

Pozycjonowanie elementów kompozycyjnych

offset

Modyfikator offset przesuwa element kompozycyjny w przestrzeni 3D wzdłuż osi x, y, i z. Te jednostki muszą być określone w dp; aby przekonwertować metry na dp, użyj Meter.toDp().

rotate

Modyfikator rotate obraca dany element kompozycyjny w przestrzeni. Kierunek i stopień obrotu można określić na różne sposoby:

  • za pomocą pochylenia, odchylenia i obrotu, które określają odpowiednio obrót wokół osi x, y i z;
  • za pomocą axisAngle, czyli Vector3 reprezentującego oś obrotu, oraz stopnia, o jaki należy obrócić element wokół tej osi;
  • za pomocą Quaternion, który reprezentuje obrót.

rotateToLookAtUser

Modyfikator rotateToLookAtUser stale obraca treść, tak aby zawsze była skierowana do użytkownika. Możesz też użyć tego modyfikatora, aby uzyskać efekt „billboardu”, w którym treść obraca się w kierunku użytkownika na osi Y, pozostając jednocześnie w pozycji pionowej i wyrównanej do grawitacji. Aby to zrobić, połącz modyfikator rotateToLookAtUser z modyfikatorem gravityAligned.

Ten modyfikator wymaga, aby aplikacja skonfigurowała obiekt bieżącej sesji za pomocą DeviceTrackingMode.LAST_KNOWN.

HeadTrackingMode.LAST_KNOWN.

Zmienianie wyglądu elementów kompozycyjnych

alpha

Modyfikator alpha ustawia przezroczystość elementu i jego elementów podrzędnych. Wartość 0f oznacza pełną przezroczystość, a 1.0f – całkowitą nieprzezroczystość.

scale

Modyfikator scale skaluje zawartość elementu kompozycyjnego wzdłuż osi poziomej, pionowej i głębokości.

Testowanie i ułatwienia dostępu

semantics

Modyfikator semantics dodaje semantykę do węzła układu, która jest używana w testowaniu i ułatwieniach dostępu. Zobacz Semantyka w Jetpack Compose i SemanticsModifier.

testTag

Modyfikator testTag to skrót od SemanticsPropertyReceiver.testTag, który umożliwia frameworkom testowym znajdowanie elementu w testach.