gf1:lab_scratch

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
gf1:lab_scratch [2022/09/21 13:11] marrocgf1:lab_scratch [2025/10/28 06:04] (aktuell) marroc
Zeile 1: Zeile 1:
 =====Ein Spiel programmieren mit Scratch===== =====Ein Spiel programmieren mit Scratch=====
  
-<callout type="primary" title="A. Programmablauf (Datenverarbeitung)"> 
-{{fa>angle-double-down}}<button collapse="coll1" type="link">Bereich ausklappen/einklappen </button> 
-<collapse id="coll1"> 
 ===Das EVA Prinzip=== ===Das EVA Prinzip===
 Ein Programm kann Eingabeinformationen enthalten, diese verarbeiten und dann allenfalls das Ergebnis als Ausgabe anzeigen. Oft wird hier auch vom **EVA Prinzip** gesprochen. {{ :gf1:eva.png?600|}} Ein Programm kann Eingabeinformationen enthalten, diese verarbeiten und dann allenfalls das Ergebnis als Ausgabe anzeigen. Oft wird hier auch vom **EVA Prinzip** gesprochen. {{ :gf1:eva.png?600|}}
Zeile 17: Zeile 14:
 In diesen Code-Blöcken gibt es viele wichtige Elemente wie Schleifen, Variablen, Bedingungen, welche in von vielen Programmiersprachen verwendet werden. In diesen Code-Blöcken gibt es viele wichtige Elemente wie Schleifen, Variablen, Bedingungen, welche in von vielen Programmiersprachen verwendet werden.
  
-</collapse> 
-</callout> 
  
-<callout type="success" title="B. Scratch-Umgebung"> +==== Scratch-Umgebung ===
-{{fa>angle-double-down}}<button collapse="coll2" type="link">Bereich ausklappen/einklappen </button> +
-<collapse id="coll2">+
  
 Öffnen Sie den Scratch im Browser unter Ihnen steht es frei, die Programmierumgebung [[https://scratch.mit.edu/download |hier]] runterzuladen oder [[https://scratch.mit.edu/ |online]] zu programmieren und somit ein Scratchkonto zu erstellen. Öffnen Sie den Scratch im Browser unter Ihnen steht es frei, die Programmierumgebung [[https://scratch.mit.edu/download |hier]] runterzuladen oder [[https://scratch.mit.edu/ |online]] zu programmieren und somit ein Scratchkonto zu erstellen.
Zeile 41: Zeile 35:
 Figuren bilden die Grundlage von Scratch, sie können sich auf der Bühne bewegen, das Aussehen verändern oder mit anderen Figuren interagieren. Diese Figuren werden über Scripts (Programme) gesteuert. Als BenutzerIn kann man eine Scratch-Figur aus einer grossen Menge an Figuren auswählen, man kann diese auch verändern oder eigene Figuren hochladen.  Figuren bilden die Grundlage von Scratch, sie können sich auf der Bühne bewegen, das Aussehen verändern oder mit anderen Figuren interagieren. Diese Figuren werden über Scripts (Programme) gesteuert. Als BenutzerIn kann man eine Scratch-Figur aus einer grossen Menge an Figuren auswählen, man kann diese auch verändern oder eigene Figuren hochladen. 
 {{ :gf1:figuren_scratch.png?400|}} {{ :gf1:figuren_scratch.png?400|}}
-</collapse> 
-</callout> 
  
-<callout type="success" title="C. Scratch-Blöcke"> + 
-{{fa>angle-double-down}}<button collapse="coll3" type="link">Bereich ausklappen/einklappen </button> +==== Scratch-Blöcke ===
-<collapse id="coll3">+ 
  
 {{ :gf1:scratchbloecke.png?400|}} {{ :gf1:scratchbloecke.png?400|}}
Zeile 63: Zeile 56:
   * **Bewegungsblöcke**: Diese Blöcke zeigen die Ausgabe eines Programms, indem sie die Figuren auf der Bühne bewegen und steuern.   * **Bewegungsblöcke**: Diese Blöcke zeigen die Ausgabe eines Programms, indem sie die Figuren auf der Bühne bewegen und steuern.
   * **Aussehen oder Klangblöcke**: Auch diese Blöcke sind Ausgabeblöcke, da das Aussehen der Figur oder auch der Bühne verändert wird oder aber ein Klangeffekt abgespielt wird   * **Aussehen oder Klangblöcke**: Auch diese Blöcke sind Ausgabeblöcke, da das Aussehen der Figur oder auch der Bühne verändert wird oder aber ein Klangeffekt abgespielt wird
-</collapse> 
-</callout> 
  
-<callout type="success" title="C. Scratch-Spiel programmieren"> +==== Scratch-Spiel programmieren ===
-{{fa>angle-double-down}}<button collapse="coll3" type="link">Bereich ausklappen/einklappen </button> +
-<collapse id="coll3">+
 Es folgt eine Spezifikation des Spiels. Anschliessend wird das Spiel etappenweise mit Block-Programmierung programmiert. Zu jeder Etappe gibt es, falls gewünscht, eine genaue Anleitung. Es kann aber immer auch selbst auf eigene Faust innerhalb der einzelnen Etappen programmiert werden. Es folgt eine Spezifikation des Spiels. Anschliessend wird das Spiel etappenweise mit Block-Programmierung programmiert. Zu jeder Etappe gibt es, falls gewünscht, eine genaue Anleitung. Es kann aber immer auch selbst auf eigene Faust innerhalb der einzelnen Etappen programmiert werden.
  
Zeile 81: Zeile 71:
 {{ :gf1:lab1aktivitaet.png?nolink&800 |}} {{ :gf1:lab1aktivitaet.png?nolink&800 |}}
  
 +<WRAP nicebox green>
 ===Das Setting=== ===Das Setting===
 Durch diesen Programmteil wird die Spielumgebung und die Figuren festgelegt. Durch diesen Programmteil wird die Spielumgebung und die Figuren festgelegt.
Zeile 104: Zeile 95:
 | 2 | Die Steuerung wird wie folgt programmiert:   || | 2 | Die Steuerung wird wie folgt programmiert:   ||
 |:::|Eine **endlose Schleife** "wiederhole fortlaufend" auswählen. Dadurch überprüft das Programm fortlaufend, was innerhalbt der "orangen Klammer" passiert, hier: ob die Pfeiltasten gedrückt werden. || |:::|Eine **endlose Schleife** "wiederhole fortlaufend" auswählen. Dadurch überprüft das Programm fortlaufend, was innerhalbt der "orangen Klammer" passiert, hier: ob die Pfeiltasten gedrückt werden. ||
-|:::|In der Scheife eine Bedingung "falls,... dann" und hier sollte die Bedingung "Taste Pfeil nach oben gedrückt?", dann ändere y um 10.||+|:::|In der Schleife eine Bedingung "falls,... dann" und hier sollte die Bedingung "Taste Pfeil nach oben gedrückt?", dann ändere y um 10.||
 |:::|Die zweite "falls,... dann"-Bedingung in der Schliefe sollte die Bedingung "Taste Pfeil nach unten gedrückt?", dann ändere y um -10  | {{ :gf1:pfeiltasten_lab1.png?linkonly |Hinweis}} | |:::|Die zweite "falls,... dann"-Bedingung in der Schliefe sollte die Bedingung "Taste Pfeil nach unten gedrückt?", dann ändere y um -10  | {{ :gf1:pfeiltasten_lab1.png?linkonly |Hinweis}} |
 |:::|Testen Sie das geschriebene Script, starten Sie das Spiel über die grüne Fahne oben in der Mitte des Fensters. Verschieben Sie vor dem Testen die Anzeigen (zum Scrollen) in die obere rechte Ecke.|| |:::|Testen Sie das geschriebene Script, starten Sie das Spiel über die grüne Fahne oben in der Mitte des Fensters. Verschieben Sie vor dem Testen die Anzeigen (zum Scrollen) in die obere rechte Ecke.||
Zeile 125: Zeile 116:
 |:::|Wählen Sie in der Figurenliste die **Asteroiden-Figur** aus und fügen Sie einen Code in den nun wieder leeren Skriptbereich hinzu:|| |:::|Wählen Sie in der Figurenliste die **Asteroiden-Figur** aus und fügen Sie einen Code in den nun wieder leeren Skriptbereich hinzu:||
 |:::|Hier soll beim Start einen Asteroiden der Grösse 22 erzeugt werden aber noch nicht sichtbar sein (sich verstecken).|| |:::|Hier soll beim Start einen Asteroiden der Grösse 22 erzeugt werden aber noch nicht sichtbar sein (sich verstecken).||
-|:::|Anschliessend wird eine Scheife fortlaufend wiederholt, diese Schaufe erzeugt weitere Asteroide, sogenannte Klons. Dabei sollten nach dem Erzeugen immer ein Zeitabstand-Moment gewartet werden.|{{ :gf1:asteroid1_lab1.png?linkonly |Hinweis}}|+|:::|Anschliessend wird eine Scheife fortlaufend wiederholt, diese Scheife erzeugt weitere Asteroide, sogenannte Klons. Dabei sollten nach dem Erzeugen immer ein Zeitabstand-Moment gewartet werden.|{{ :gf1:asteroid1_lab1.png?linkonly |Hinweis}}|
 |2|**Der Asteroidenhagel**|| |2|**Der Asteroidenhagel**||
 |:::|Nun soll ein Schwarm von Asteroiden entstehen. Dies ist vermutlich etwas knifflig. Hier einige Hinweise, die befolgt werden sollten.|| |:::|Nun soll ein Schwarm von Asteroiden entstehen. Dies ist vermutlich etwas knifflig. Hier einige Hinweise, die befolgt werden sollten.||
Zeile 156: Zeile 147:
   * Lassen Sie die Asteroiden von ganz verschiedenen Positionen heranfliegen.   * Lassen Sie die Asteroiden von ganz verschiedenen Positionen heranfliegen.
   * eigene Ideen umsetzen.   * eigene Ideen umsetzen.
 +</WRAP>
 +
 +
  
 +**Nachbearbeitung:**
 +  * Zu zweit ein Spiel zum Laufen bringen bis vor den Ferien, Sie bekommen noch 45 Minuten Zeit in einer Lektion.
 +  * Die wichtigsten Erkenntnisse: Was Sie gelernt haben, auf was man achten muss und ein von Ihnen gelöstes Problem Ihrer Spielprogrammierung beschreiben. Auch welche Lehren Sie daraus ziehen.
 +  * Die Programmierelemente identifizieren und den Code erklären können. (Beispielsweise: Ein Stück Code eines Spiels einer anderen Gruppe verstehen und erklären können.)
 +  * Verstehen, was Modulo macht. Siehe Schritt 5 beim [[https://www.wiki.mathematix.ch/doku.php?id=gf1:lab_scratch#das_raumschiff |Raumschiff]] 
  
-</collapse> 
-</callout> 
 [[gf1:start|Zurück zur Startseite]] [[gf1:start|Zurück zur Startseite]]
  
  • gf1/lab_scratch.1663758714.txt.gz
  • Zuletzt geändert: 2022/09/21 13:11
  • von marroc