Wbudowane duszki w tekście Unity?

10

Jak korzystać z różnych materiałów podczas korzystania ze znacznika do składni tekstu sformatowanego Unity?

Chcę mieć sprite, które są zgodne z moim tekstem, bez konieczności tworzenia niestandardowych czcionek.

Oto, co mam do tej pory: wprowadź opis zdjęcia tutaj Oto składnia, której używam do tekstu na obrazie:

Planetary <quad material=1 size=20 x=0.1 y=0.1 width=0.1 height=0.1 /> Intergalactic

Zgaduję, że „materiał = 1” odnosi się do indeksu materiału obiektu Text. Jak mogę ustawić, aby używał zupełnie innego materiału?

Czy istnieje wtyczka lub inny zasób, który ułatwia osadzanie ikon w tekście?

James Linden
źródło
3
Korzystanie quadz tekstu sformatowanego Unity to jedyna droga. materialCechą jest materiał w pozycji „materialnego Array rendererowi za”. Przetwarzam wstępnie lub konkataruję odpowiedni indeks materiałowy, szukając materiału, którego szukasz Renderer.materials.
MLM
Dam temu szansę i wrócę z kilkoma wynikami, dzięki MLM!
James Linden
1
To pytanie zostało zamieszczone w Unity Answers . Wygląda na to, że chociaż obsługiwany jest tekst sformatowany, quady nie są zgodne z Timem C i Philem z Unity, patrz: forum.unity3d.com/threads/…
MLM
1
Zrobiłem implementację, która robi to w UI Text (w przeciwieństwie do metody quad z TextMesh), dynamicznie spawnując i pozycjonując obrazy potomne. Szczegóły stają się trochę skomplikowane, ale jeśli są przydatne dla każdego, mogę to napisać jako odpowiedź.
DMGregory
@DMGregor, chciałbym, abyś napisał odpowiedź lub link do swojego kodu dla skryptu Sprited Image.
James McMahon

Odpowiedzi:

1

Ponieważ system tekstowy jest nadal starszym systemem tekstowym, nie można osadzać obrazów w tekście. Jedyną opcją byłoby posiadanie grupy układów i oddzielnych bloków tekstu i obrazu

Alternatywnie możesz użyć zasobu takiego jak TextMeshPro, który ma nową implementację tekstu, która w pełni to obsługuje (i wiele więcej!)

Ciemna strona
źródło