Programowanie

Rysowanie w SpriteKit

Na tej lekcji drogie dzieci dowiecie się co nieco o kształtach w SpriteKit. Zacznę może od powtórzenia jak to było z tym hello world:

Funkcja didMoveToView jest nadpisaną funkcją z klasy SKScene. View (SKView) jest podstawowym elementem SpriteKit, a sceny zawierają je w sobie. Sceny przechowują również obiekty oświetlenia, kamer i takich tam nikomu niepotrzebnych duperel 🙂

W każdym razie w poprzednim akapicie wspomniana funkcja wykonuje się gdy dany widok zostaje wyświetlony. W kodzie można ustawić np. tło (self.background) lub dodać jakieś elementy do widoku (self.AddChild()). Można też te elementy w tym miejscu utworzyć. Jeszcze nie jestem w 100% pewien czy to dobre miejsce do tworzenia obiektów dla sceny, ale ponieważ bawię się i prototypuję – na razie zakładam, że nie jest gorsze niż żadne inne.

W powyższym przykładzie stworzyłem obiekt klasy SKLabel który realizuje nasz napis “Hello, World!” odpowiednią czcionką w odpowiednim rozmiarze. Teoretycznie napis powinien pojawić się na środku ekranu, ale cóż za niespodzianka – widzę go u góry. Okazuje się że scena, czy self.frame jest większe od ekranu i można widok przesuwać ją w górę i w dół. Na pewno się ta wiedza przyda.

Wróćmy do tematu – rysowanie! Co można narysować? Na pewno kształt. Narysuję najprostszy czyli kwadrat:

W powyższy sposób stworzyłem żółty kwadrat o rozmiarach 40/40. Umieściłem go w pobliżu środka sceny.

Co jeszcze można narysować? Za pomocą SKShapeNode wiele elementów takich jak: koło, elipsa, ścieżka, zestaw punktów, prostokąt, a to wszystko na różne sposoby. Ale oprócz natywnych kształtów mogę wyświetlić również obrazek. Spróbuję pokazać jak to się robi:

Powyższy kod wyświetlił na środku sceny statek kosmiczny dodany wcześniej do projektu. Obrazki można wyświetlać tak za pomocą nazw po dodaniu ich do projektu jak również za pomocą ścieżki do pliku.

 

Na razie było prosto, w następnym poście postaram się poruszać kwadratem po ekranie i to już powinno być zabawne.

One thought on “Rysowanie w SpriteKit”

  1. Pingback: dotnetomaniak.pl

Leave a Reply

Your email address will not be published. Required fields are marked *