sprite.md 3.1 KB


title: Sprite - reprezentacja graficzna 2D

brief: Instrukcja ta opisuje jak pokazywać dwuwymiarowe grafiki używając komponentu typu Sprite.

Sprite

Komponent typu Sprite (z ang. dosłownie: chochlik/duszek/krasnoludek - popularna w gamedevie od lat nazwa obrazków 2D w grach - przyp.tłum.) to dwuwymiarowa reprezentacja wizualna w grafice komputerowej wyświetlana jako pojedynczy obrazek lub animacja poklatkowa (flipbook animation).

sprite{srcset="images/graphics/[email protected] 2x"}

Komponent typu Sprite może wykorzystywać jako teksturę Galerię - Atlas lub Źródło kafelków - Tile Source.

Właściwości Sprite'ów

Poza właściwościami takimi jak Id, Position i Rotation komponenty te posiadają swoje specyficzne właściwości:

Image : Obraz/tekstura dwuwymiarowa - może nią być Galeria - Atlas lub Źródło kafelków - Tile Source.

DefaultAnimation : Domyślna animacja używana przy wyświetlaniu obrazu.

Material : Materiał służący do renderowania.

Blend Mode : Tryb "mieszania"/blendowania używany również przy renderowaniu. Więcej szczegółów poniżej.

Blend modes - tryby blendowania

:blend-modes

Manipulacja w trakcie działania programu

Możesz manipulować właściwościami Sprite'ów w trakcie działania programu dzięki wielu funkcjom i zmiennym właściwościom (szukaj przykładów użycia w API). Funkcje:

  • sprite.play_flipbook() - Odtwarzaj animację sprite'a.
  • sprite.set_hflip() and sprite.set_vflip() - Odwróć w pionie lub poziomie animację/obraz sprite'a.

Sprite posiada również różne właściwości, którymi można manipulować przy użyciu funkcji go.get() i go.set():

cursor : Znormalizowany (czyli w przedziale 0-1) kursor animacji, czyli wskaźnik na klatki danej animacji poklatkowej (liczba - number).

image : Obraz sprite'a (hash). Możesz użyć tej właściwości do podmiany tekstury sprite'a na inną galerią lub źródło kafelków, które mogą być właściwościami zasobu (resource property) i ustawić używając go.set(). Sprawdź szczegóły i przykłady w API.

material : Materiał sprite'a (hash). Możesz podmienić materiał korzystając z właściwości zasobu (resource property) i ustawić używając go.set(). Sprawdź szczegóły i przykłady w API.

playback_rate : Wskaźnik odtwarzania animacji, czyli prędkość z jaką odtwarzana jest animacja (number).

scale : Skala obrazka (wektor - vector3).

size : Rozmiar obrazka (vector3) (Wartość tylko do odczytu - pokazuje rozmiar tekstury).

Stałe materiału

{% include shared/material-constants.md component='sprite' variable='tint' %}

tint : Kolor zabarwienia/odcienia obrazka (vector4). Wektor czterech komponentów reprezentuje zabarwienie, gdzie komponenty x, y, z, w odpowiadają składowym: czerwony, zielony, niebieski i przezroczystość (red, green, blue, alpha).

Konfiguracja projektu

Plik game.project zawiera te ustawienia dotyczące sprite'ów.