Ustawianie dynamiczne tekstury za pomocą skryptu 3805 2

O temacie

Autor Adanos

Zaczęty 9.11.2015 roku

Wyświetleń 3805

Odpowiedzi 2

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Jak ustawić za pomocą skryptu teksturę? :D
Próbuję coś takiego:
gameObject.GetComponent<SpriteRenderer>().sprite = Resources.Load(path + "\\nazwa", typeof(Sprite)) as Sprite;
Chcę wczytać wszystkie tekstury, wylosować jedną i ustawić ją obiektowi. Jakiś pomysł, żeby to działało tak jak chcę?

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Dobra, problem rozwiązany z pomocą Avallacha. Okazało się, że podawałem złą ścieżkę i pliki z zasobami powinny być w katalogu Resource.

inż. Avallach

inż. Avallach

Administrator
posty7662
Propsy5238
NagrodyV
ProfesjaProgramista
  • Administrator
Tak dla uściślenia - chodzi jedynie o pliki z zasobami które chcesz ładować programowo w runtime za pośrednictwem UnityEngine.Resorces.Load*. To rozwiązanie pomiędzy ładowaniem z dysku (bo możesz robić to w runtime) a normalnym osadzeniem jako asset (bo przy buildzie Unity dokona za ciebie konwersji do wewnętrznego gotowego do użycia formatu i spakuje do archiwum z resztą assetów).
Dla kontrastu normalne asoby które przypisujesz edytorem do sceny mogą być niemal gdziekolwiek w Assets, a zasoby które chcesz ładować w runtime za pomocą System.IO.* mogą być gdziekolwiek na dysku (gdzie gra będzie miała uprawnienia do odzczytu).

No i był jeszcze jeden błąd, przypisywałeś obiekt Texture2D do pola typu Sprite. Nie ma konwersji między tymi typami, jest za to metoda faktorkowa Sprite.Create która przyjmuje Texture2D jako argument.


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry