Ricerca…


Parametri

Parametro Dettagli
showsFPS Visualizza un conteggio della frequenza fotogrammi corrente in Fotogrammi al secondo nella vista.
showsNodeCount Visualizza un conteggio del numero attuale di SKNodi visualizzati nella vista.
showsPhysics Visualizza una rappresentazione visiva di SKPhysicsBodys nella vista.
showsFields Mostra un'immagine che rappresenta gli effetti dei campi fisici nella vista.
showsDrawCount Visualizza un conteggio del numero di passaggi di disegno richiesti per il rendering della vista.
showsQuadCount Mostra un conteggio del numero di rettangoli necessari per il rendering della vista.

Osservazioni

Una SKView è una sottoclasse di UIView che viene utilizzata per presentare animazioni 2D SpriteKit.

Un SKView può essere aggiunto a Interface Builder o programmaticamente allo stesso modo di "normali" UIViews. Il contenuto di SpriteKit viene quindi presentato in SKView in un SKScene.

Vedi anche Riferimento di classe SKView dalla documentazione Apple.

Crea un SKView a schermo intero usando Interface Builder

Un tipico caso d'uso per SpriteKit è dove l'SKView riempie l'intero schermo.

Per fare questo in Xcode's Interface Builder, prima crea un normale ViewController, quindi seleziona la vista contenuta e modifica la sua Classe da UIView a SKView :

inserisci la descrizione dell'immagine qui

All'interno del codice per View Controller, nel metodo viewDidLoad, prendi un collegamento a questo SKView usando self.view:

In Swift:

guard let skView = self.view as? SKView else {
    // Handle error
    return
}

(L'affermazione di guardia qui protegge dall'errore teorico che la vista non è un SKView.)

È quindi possibile utilizzarlo per eseguire altre operazioni come la presentazione di un SKScene:

In Swift:

skView.presentScene(scene)

Visualizzazione delle informazioni di debug

Il frame rate corrente (in FPS, Frames Per Second) e il numero totale di SKNode nella scena (nodeCount, ogni sprite è un SKNode ma altri oggetti nella scena sono anche SKNodes) possono essere mostrati nell'angolo in basso a destra della vista .

Questi possono essere utili se attivati ​​(impostati su true) per il debug e l'ottimizzazione del codice, ma devono essere disattivati ​​(impostati su false) prima di inviare l'app all'App Store.

In Swift:

skView.showsFPS = true
skView.showsNodeCount = true

Risultato:

inserisci la descrizione dell'immagine qui

Crea un piccolo SKView con altri controlli usando Interface Builder

Uno SKView non ha bisogno di riempire l'intero schermo e può condividere lo spazio con altri controlli dell'interfaccia utente. Puoi anche avere più di una SKView visualizzata contemporaneamente, se lo desideri.

Per creare un SKView più piccolo tra gli altri controlli con Interface Builder, prima crea un ViewController normale, quindi trascina e rilascia una nuova vista sul controller della vista:

Trascina e rilascia una nuova vista

Può essere utile impostare il colore di questa vista su qualcosa di diverso dal bianco (qui è usato il nero) in modo che possa essere visto più chiaramente in Interface Builder (questo colore non verrà mostrato nell'app finale). Aggiungi altri controlli (un UIView, due pulsanti e un'etichetta sono mostrati qui come esempi) e usa i vincoli normalmente per posizionarli sul display:

Cambia colore, aggiungi controlli, aggiungi vincoli

Quindi seleziona la vista che vuoi essere SKView e cambia la sua classe in SKView:

Cambia classe in SKView

Quindi, usando l'editor dell'assistente, trascina il controllo da questo SKView al tuo codice e crea un Outlet:

Crea un Outlet

Usa questa presa per presentare la tua SKScene.

In Swift:

skView.presentScene(scene)

Risultato (basato sull'esempio di Hello World ):

inserisci la descrizione dell'immagine qui



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow