Animaties

Scratch biedt veel mogelijkheden om animaties te maken. Een animatie is een soort filmpje dat je kan maken met tekeningen en/of foto's. Een animatie maken kost best wat tijd. Hieronder staan een paar tips om je op weg te helpen.

Stop-Motion

Je kan een animatie maken door één of meerdere sprites van uiterlijk te doen veranderen. Dit is te vergelijken met Stop-motion of met een flipboekje.

Als je een bal wil laten bewegen met deze techniek, maak je in de sprite een kopie van de bal (1). Je maakt dus in het tekenprogramma een nieuw uiterlijk. Bij dat nieuwe uiterlijk verschuif je de bal een beetje (2). Dit herhaal je totdat je de bal op de gewenste positie hebt gekregen.

Het enige wat je nu nog hoeft te doen, is zorgen dat de sprite snel van uiterlijk verandert. Daarvoor is de volgende code handig (3). Eerst zeg je tegen de computer met welk uiterlijk je wilt starten. Meestal is dat het eerste uiterlijk. Daarna wacht de computer gedurende een aantal honderdsten. Die honderdsten bepalen hoelang het duurt voordat het volgende uiterlijk verschijnt.

Door de bal steeds een beetje verder te laten verschijnen, foppen we onze hersenen. Die denken dat de bal naar daar is verschoven, ook al is er een tussenstuk waar de bal "helemaal niet is geweest". Je kan dit voorbeeld met de bal gebruiken om een korte animatie van een voetbalwedstrijd te maken.

1)

Bal kopieren.png







2)

Bal verplaatsen.png








3)


herhaal
volgend uiterlijk
wacht (0.1) sec.


Verder kun je niet alleen iets laten bewegen, maar ook van vorm laten veranderen. Dat is bijvoorbeeld nodig als je iemand met zijn arm wilt laten zwaaien. Ook in dit geval maak je een aantal keer een kopie van het uiterlijk van een sprite. Op elk volgend uiterlijk teken je dan een hand die iets verder omhoog is gegaan. Met een stuk of vijf uiterlijken krijg je vaak al een mooi effect.

Wandelende-kat.png






Je hoeft overigens niet per se zelf te tekenen of bestaande plaatjes aan te passen als je in Scratch animaties wilt maken, al is dat natuurlijk wel heel leuk. In de plaatjesbibliotheek van Scratch zitten ook figuren met meerdere uiterlijken waarmee je eenvoudig animaties kunt maken.

Hierboven een voorbeeld van de Scratch-kat. Die heeft twee uiterlijken meegekregen en als je die om de beurt laat zien op het scherm, lijkt hij echt te lopen. Je hebt dan natuurlijk ook een blok uit de categorie beweging nodig.

Gebruik maken van blokken

Een tweede manier om een animatie te creëren, is door gebruik te maken van de bewegenings- en effect-bokken. Hierbij heb je niet zoveel uiterlijken nodig als bij Stop-motion. Als je bijvoorbeeld een loopwedstrijd wilt maken waarbij de renners in één rechte lijn lopen, kun je dit blok gebruiken:

ga naar x:(-200) y:(0)
schuif in (willekeurig getal tussen (3) en (5)) sec. naar x:(200) y:(0)

De renner zal links beginnen en naar rechts lopen in een willekeurige tijd tussen 3 en 5 seconden.

Je kan zo experimenteren met zowat elk blok. Zoals het blok 'effecten' (laten vervagen, lichter en donkerder maken,...), 'draaien' (bv. een wiel van een auto laten draaien), 'stempel', ...

Signaalblokken

Soms moeten er meerdere sprites na elkaar bewegen, zonder dat het project ergens hapert. Dat kan met 'wacht (aantal) seconden' blokken. Dat is echter best lastig, want dan moet je tot op een deel van een seconde precies zijn.

Een voorbeeld: je hebt een sprite danser en een sprite discobol. De discobal moet beginnen te draaien wanneer de danser vijf moves heeft gedaan. Dan kan je bij de discobol hetvolgende Scratch-blok zetten:

wacht (aantal seconden dat danser nodig heeft om move te doen) sec.

Het kan echter handiger, namelijk door gebruik te maken van signaalblokken. Wanneer de danser klaar is met zijn 5 moves, laat je hem een signaal (bijvoorbeeld het signaal'discobol') uitzenden ten teken dat de discobol mag beginnen met draaien.

Bij de discobol verander je dan het 'wanneer vlaggetje aangeklikt wordt'-blok door het signaalblok dat het signaal 'discobol' ontvangt. Verder haal je het wachtblok weg. Nu gaat de danser zijn 5 moves doen en net na zijn vijfde move zal de discobol mee beginnen draaien, zonder dat de discobol te laat of te vroeg is.


Bij de danser:

herhaal (5) keer
blokken voor de move
end
zend signaal (discobol)

Bij de discobol

wanneer ik signaal (discobol) ontvang
herhaal
draai (15) graden naar links
end

Animatie door het maken van klonen

Als je een kloon maakt van je sprite, krijg je een kopie die je apart dingen kunt laten doen (en daarna laten verdwijnen met blok "verwijder deze kloon"). Handig voor vuurwerk!

Met het script hieronder maak je tien klonen die allemaal een andere kant op wijzen (oftewel een andere looprichting hebben). Ze stappen dus ook allemaal een andere kant op met het script eronder. En dat geeft een vuurwerk-effect.

Fireworks.png

herhaal (10) keer
draai (36) graden naar rechts
maak kloon van [mijzelf v]
end
wanneer ik als kloon start
herhaal (10) keer
neem (20) stappen
end
verwijder deze kloon

Voorbeelden en oefeningen

Tip: hou de shifttoets ingedrukt om in een nieuw tabblad te openen.

[1]; Tutorial over hoe je sprites kan laten bewegen door @PinkyPepper.

[2]; Tutorial over blokken die je kan gebruiken in animaties door @juf-pinky.

[3]; Voorbeeld van stop-motion (klik op 'sneeuwman' en dan 'uiterlijken') door @robnoo.

[4]; voorbeeld van een erg mooi rennende en springende Scratch-kat door @griffpatch.

[5]; Voorbeeld van stop-motion (foto's snel na elkaar tonen) door @-SMS-.

[6]; Voorbeeld van het gebruik van stop-motion en signaalblokken in een abstracte animatie door @Superniekie.

[7]; Probeer zelf een animatie te maken met behulp van signaalblokken ipv wachtblokken! door @Juf-Pinky.

  • Deze pagina is het laatst bewerkt op 31 aug 2016 om 17:17.