< Unità 3 - Animazioni e giochi interattivi ('22-'23)

Lezione 12 - Movimento dei personaggi

45 minuti

Panoramica

Domanda del giorno: come possiamo controllare il movimento dei personaggi in Sviluppo Giochi?

In questa lezione, gli studenti imparano come controllare il movimento dei personaggi, sfruttando lo stesso metodo che si usa nel “ciclo con contatore”, che permette di cambiare in modo incrementale le proprietà dei personaggi. Dopo aver ragionato insieme sui diversi modi in cui si potrebbero animare i personaggi controllando le loro proprietà, gli studenti sperimentano in Code Studio lo “schema a contatore”, per creare vari tipi di movimenti dei personaggi.

Traguardo di apprendimento

Questa lezione è basata sulla funzione ciclica draw() che gli studenti hanno già imparato durante la creazione di programmi con movimento intenzionale. Incrementando o diminuendo le proprietà dei personaggi, come `sprite.x`(#f78183), gli studenti possono scrivere programmi che spostano i personaggi secondo gli schemi previsti, invece del movimento casuale utilizzato in passato. Le animazioni che gli studenti imparano a creare in questa lezione gettano le basi per tutte le animazioni e i giochi che realizzeranno durante il resto dell'unità.

Opportunità di valutazione

  1. Usare lo "schema a contatore" per incrementare o diminuire le proprietà dei personaggi

    Vedi l'esercizio 8 su Code Studio.

  2. Riconoscere quali proprietà dei personaggi devono essere modificate e in che modo, al fine di ottenere un movimento specifico

    Vedi l'esercizio 8 su Code Studio.

Mappatura delle competenze

Mappatura completa del corso
CSTA K-12 Computer Science Standards (2017)
    • 2-AP-11 - Create clearly named variables that represent different data types and perform operations on their values.
    • 2-AP-12 - Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals.
    • 2-AP-13 - Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs.
    • 2-AP-16 - Incorporate existing code, media, and libraries into original programs, and give attribution.
    • 2-AP-17 - Systematically test and refine programs using a range of test cases.
    • 2-AP-19 - Document programs in order to make them easier to follow, test, and debug.

Pianificazione

Obiettivi

Gli alunni saranno in grado di:
  • riconoscere quali proprietà dei personaggi devono essere modificate e in che modo, al fine di ottenere un movimento specifico
  • usare lo "schema a contatore" per incrementare o diminuire le proprietà dei personaggi

Preparazione

  • Controlla il forum "Aula insegnanti" per insegnanti verificati per trovare strategie o risorse aggiuntive condivise dagli altri colleghi insegnanti
  • Se stai facendo una lezione virtuale, valuta la possibilità di controllare le nostre Modifiche alla lezione virtuale

Collegamenti

Attenzione! Fai una copia di tutti i documenti che intendi condividere con gli alunni.

Per gli insegnanti
Per gli studenti

Guida didattica

Preparazione (5 minuti)

Ripasso delle proprietà di un personaggio

Ripasso: elenca su un foglio di carta da appunti tutte le proprietà dei personaggi a cui riesci a pensare e su quale aspetto di un personaggio influiscono.

Discussione: che tipo di animazioni potresti creare se potessi controllare queste proprietà? Prendi in considerazione l'aggiunta e la sottrazione dalle proprietà o addirittura l'aggiornamento di più proprietà contemporaneamente.

Discussione: dai modo agli studenti di condividere le proprie idee con un compagno prima di condividerle con l'intera classe.

Scopo della discussione

Lo scopo di questa discussione è far si' che gli studenti inizino a pensare a come potrebbero utilizzare le varie proprietà dei personaggi che hanno visto finora per realizzare animazioni con movimento intenzionale. Se gli studenti fanno fatica a trovare idee, puoi restringere la domanda a proprietà specifiche. Per esempio:

  • Cosa succederebbe a un personaggio se aumentassi in modo costante la proprietà `x`(#f78183)?
  • Cosa succederebbe a un personaggio se aumentassi in modo costante la proprietà `y`(#f78183)?
  • E cosa si potrebbe dire riguardo ad altre proprietà o alla combinazione di più proprietà?

Domanda del giorno: come possiamo controllare in Sviluppo Giochi il movimento dei personaggi?

Attività (35 minuti)

Transizione: fai andare gli studenti su Code Studio.

Suggerimenti didattici

Guida agli esercizi di programmazione: ulteriori indicazioni per gli esercizi di programmazione sono fornite nella Guida CSD agli esercizi di programmazione. Questo documento include strategie e buone pratiche per agevolare lo svolgimento degli esercizi di programmazione con gli studenti.

Domande da considerare con il video:

  • Cos’è lo schema a contatore (counter pattern)?
  • Come vengono spostati i personaggi nell’area di gioco mediante lo schema a contatore?
Scopo della discussione

Obiettivi:

Gli studenti possono descrivere lo schema a contatore in vari modi. Assicurati che vadano oltre la semplice indicazione dei blocchi di istruzione o del codice utilizzati dallo schema a contatore. Dovrebbero capire che il contatore consente al programmatore di aggiornare il valore di una variabile in uno schema che effettua conteggi verso l'alto (o verso il basso) ad ogni iterazione della funzione ciclica draw(). Può essere usato per molte cose diverse, come la rotazione, l'accrescimento, il rimpicciolimento o la durata, ma è più spesso usato per spostare i personaggi all'interno dell'area dello schermo.

Quando la proprietà x o y di un personaggio viene aggiornata secondo uno schema a contatore, la sua posizione cambia in modo coerente nel tempo, facendolo muovere sullo schermo. Gli studenti dovrebbero essere in grado di spiegare che il movimento in un'animazione è solo un cambiamento di posizione e che cambiare la posizione x di un personaggio lo farà muovere orizzontalmente e la modifica della posizione y di un personaggio lo farà muovere verticalmente.

Opportunità di valutazione

Valutazione formativa: questo esercizio può essere utilizzato come valutazione formativa. Nell'esercizio viene fornita una tabella con i criteri di valutazione e agli studenti può essere fornito un riscontro scritto. Clicca qui per saperne di più su come fornire riscontri agli studenti.

Conclusione (5 minuti)

Diario

Domanda del giorno: come possiamo controllare in Sviluppo Goichi il movimento dei personaggi?

Discussione: hai potuto vedere due modi per creare animazioni con la funzione ciclica draw(): numeri casuali e lo schema a contatore. Qual è un tipo di movimento per il quale vorresti usare numeri casuali? Qual è un tipo di movimento per il quale vorresti usare il contatore? Esistono movimenti che potrebbero combinare lo schema a contatore e i numeri casuali?

Discussione: dai modo agli studenti di avviare una discussione con un compagno prima di condividere tutto con l'intera classe.

Scopo della discussione

Le risposte degli studenti possono variare, ma i movimenti come lo scuotimento utilizzano numeri casuali e i movimenti più mirati utilizzano lo schema a contatore. È meno importante che gli studenti abbiano una risposta specifica piuttosto che le loro risposte riflettano una crescente comprensione di come funzionano i diversi costrutti di programmazione.

Gli studenti possono aver visto numeri casuali usati su una proprietà (rotazione) e lo schema a contatore usato su un'altra (posizione x) in una delle sfide, ma se c'è tempo, incoraggiali a pensare a cosa succederebbe se usassi lo schema a contatore per aggiungere o sottrarre un numero casuale alla proprietà di un personaggio o per combinare i due costrutti in altri modi.

Creative Commons License (CC BY-NC-SA 4.0).

Questo compito è disponibile previa Licenza Creative Commons (CC BY-NC-SA 4.0).

Se sei interessato ad utilizzare i materiali di Code.org per scopi commerciali, contattaci.