SK-C-197

Hello World, progress bar.

Pierwszy post ocierający się o kwestie techniczne. Zacznę od napisania progress bar. Z paskiem postępu trochę jak z koniem. Każdy widzi jaki powinien być, więc po co się rozpisywać? Spróbuję jednak pokusić się o szczątkową dokumentację w tym miejscu.

Publiczne pola:

  1. tekst – n.p. Mana, Health, Time, może być pusty.
  2. kolor głównego paska
  3. pozycja na ekranie
  4. max value
  5. min value

Publiczne funkcje:

  1. SetValue(int value) – powoduje przejście paska do kolejnego stanu. No i właściwie tyle.

Proste, intuicyjnie jasne, i trochę nudne.

Ominę tworzenie prefabs, każdy pewnie wie albo się domyśli jak to zrobić. Zaczęłam nawet pisać, ale w połowie zorientowałam się że wyszło ponad 1000 słów czegoś co nie daje się czytać. Zamiast długiego wpisu oferuję więc animacje gotowych efektów:

progress1 progress2 progress3Jeśli chodzi o część możliwą do wyklikania w UI, najbardziej istotne wydały mi się dwa problemy.

  1. Jak skalować element?
    Dla ustalenia uwagi przypuśćmy, że chcemy aby pasek zajmował niezmiennie 10% szerokości i 3% wysokości ekranu, był umieszczony 5% od lewego boku i 3% od górnej krawędzi ekranu.
    Druga, bardziej prawdopodobna opcja: chcemy aby pasek był umieszczony 5% od lewego boku i 3% od górnej krawędzi, natomiast przy skalowaniu zachował oryginalny stosunek szerokości do wysokości.
  2. Wybuch gwiazdek odbywa się na scenie, obiekt Progress Bar jest dzieckiem obiektu Canvas. Jak zapewnić sobie, aby wybuch zawsze następował na końcu tego paska?

Jeśli chodzi o część związaną z kodem, to pomimo swojej prostoty zasługuje ona na osobny wpis. Jutro (dzisiaj) – dwa wpisy!

Jedna myśl na temat “Hello World, progress bar.”

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *