‫Hallo en welkom.
‫In deze lezing laten we je kennismaken met een nieuw onderdeel van de animatieblauwdruk, een
‫toestandsmachine.
‫Zeer nuttig onderdeel ervan.
‫En wat ons toestaat te doen, is dat als we hier een Booleaanse schakelaar raken, het ons in staat zal stellen over te gaan
‫naar een springende staat en dan terug naar beneden om geaard te zijn.
‫Laten we eens kijken hoe dit allemaal werkt en hoe we dit voor onszelf kunnen creëren.
‫Oké.
‫We hebben dus echt raar gedrag als we springen, wat alleen maar betekent dat we in de
‫lucht rennen, wat natuurlijk niet erg goed uitziet.
‫Om dit op te lossen, moeten we leren over een geheel nieuw animatieconcept, een
‫animatiestatusmachine.
‫Dus dit hoort thuis in de animatieblauwdruk, dus ga je gang en laat dat aanzetten als je het nog
‫niet hebt geactiveerd.
‫En verder in de animatiegrafiek, tot nu toe, is alles wat we in de grafiek hebben gedaan via deze knooppunten
‫hier.
‫Wat ik je nu wil laten zien, is hoe we iets nieuws kunnen toevoegen, iets dat een toestandsmachine wordt genoemd.
‫We gaan met de rechtermuisknop klikken en dit staat in de animatiegrafiek en we gaan op zoek naar een toestandsmachine.
‫En je kunt zien dat deze advertentie, nieuwe staatsmachine hier een optie is.
‫Nu wil ik je laten zien dat er ook een andere manier is om dit te doen.
‫Als je met de rechtermuisknop helemaal terug klikt.
‫Dus als we met de rechtermuisknop in de animatiegrafiek klikken en zoeken naar een nieuwe toestandsmachine, dan hebben we deze optie.
‫Hier klikken we op, het maakt een nieuw knooppunt aan en je kunt zien dat dat knooppunt een enkele uitvoerpin
‫van een animatie-PO heeft en in het linkerdeelvenster in de Mijn blauwdruk, het heeft deze nieuwe toestandsmachine gemaakt
‫onder onze animatiegrafiek.
‫Dus als u dubbelklikt op de nieuwe toestandsmachine of in de animatiegrafiek klikt, ziet u dat u
‫naar dit nieuwe venster gaat.
‫Het is dus nog iets anders.
‫We hebben een animatiegrafiek, onze gebeurtenisgrafiek, en nu hebben we deze toestandsmachinegrafiek.
‫We kunnen dat eigenlijk hernoemen.
‫Dus we kunnen onze staatsmachine een betere naam geven door erop te klikken in de mijnblauwdrukken en op F-2 te drukken.
‫En we kunnen het voortbeweging noemen, want dit gaat allemaal over voortbeweging.
‫En wat doet een staatsmachine dan?
‫Nou, een staatsmachine is op zijn eenvoudigst, het is een set van als je met de rechtermuisknop klikt.
‫In feite kun je zien dat er hier een aantal opties zijn.
‫Er is een opmerking, er is een kanaal.
‫Maar het belangrijkste is dat staten een machine vol staten zijn.
‫En ik kan hier een paar staten aan toevoegen om je een idee te geven.
‫Dus we hebben ook staat om één staat te verklaren.
‫En als je dan van deze rand af sleept, ontstaat er iets dat een overgang wordt genoemd.
‫Dus we kunnen een overgang tussen staten creëren.
‫En we hebben deze vermelding, Penn, die ons in feite vertelt waar we moeten beginnen.
‫Oké, dus laten we een klein stapje terug doen.
‫Wat betekent dit allemaal?
‫Welnu, in elke gegeven staat, als je erop dubbelklikt, kun je zien dat er een output-pin is en
‫die output-pin kan op dezelfde manier worden gebruikt als onze animatiegrafiek kan worden gebruikt om een animatie-pose op te bouwen.
‫Dus in zijn eenvoudigste vorm, zouden we kunnen besluiten om hier een animatie in te plakken.
‫Selecteer dus bijvoorbeeld een oude speelbaarheid van animaties.
‫En dat is de animatie die wordt afgespeeld als de toestandsmachine zich in een bepaalde toestand bevindt.
‫Hoe komen we nu in een bepaalde staat?
‫Welnu, we kunnen in een bepaalde staat komen omdat ons toegangsknooppunt ernaar verwijst.
‫En dat is dus de standaardstatus.
‫Daar beginnen we mee.
‫Maar dan kunnen we misschien ook via een reeks overgangen in een toestand komen.
‫Dus de overgangen hebben elk eigenschappen, je kunt dubbelklikken op een overgang en je kunt
‫dat weer zien, we krijgen dit knooppunt in zijn pop-up en we kunnen een soort booleaanse eigenschap hebben.
‫Dus ik weet het niet, we zouden iets kunnen hebben als dood is, we kunnen dood krijgen, we kunnen dat hier inblazen en
‫nu is elke keer dat dood is waar.
‫We gaan de overgang maken als we in deze oorspronkelijke staat zijn, als we dood zijn, dan maken we de overgang
‫naar staat één en we beginnen de animatie af te spelen in staat één.
‫En als de overgangen van Staat één waar zijn, om welke reden dan ook, kunnen we de overgang naar
‫Staat twee maken.
‫Oké, dus dit is allemaal heel goed en wel in theorie, maar hoe helpt dit ons in de praktijk met hardlopen?
‫We willen bijvoorbeeld een staat die zegt gegrond.
‫En in de geaarde staten gaan we onze grondbeweging spelen.
‫Dus als we teruggaan naar de animatiegrafiek, wat geaarde voortbeweging is, is eigenlijk alles hier vóór de
‫wij en inactieve gevechtscompensatie, er is deze voortbewegingsmengruimten, ik grond het offset.
‫Dus ik ga de knooppunten hier doorknippen, ga en sluit mijn voortbewegingstoestandsmachine aan om door te gaan naar ons doel offset dat
‫ik naar de voortbewegingstoestandsmachine ga, ga naar de geaarde toestand en plak die knooppunten
‫hier en sluit ze aan op het uitvoerpaneel.
‫Dus laten we volgen wat er hier gebeurt op het niveau van de animatiegrafiek.
‫Allereerst gebruiken we de animatie-locomotion-statusmachine.
‫En omdat ik dit niet heb aangesloten, maar omdat de ingangspin naar de geaarde staat wijst, zijn we automatisch in de
‫geaarde staat, het gaat daar naar binnen, zoek uit, oké, we hebben een mengruimte, we
‫mengen dat met behulp van onze variabelen, dan voeren we dit uit.
‫Dat wordt de output van onze staatsmachine als geheel.
‫En dan wordt het doorgevoerd in de gevechtsanimatie, die wordt doorgevoerd in onze doodsanimatie, die
‫wordt doorgevoerd in onze uiteindelijke uitvoer.
‫Dus wat we nu hopelijk zullen zien als we het compileren, is dat er eigenlijk niets is veranderd omdat er maar één
‫staat in onze staatsmachine is.
‫Als we echter springen, kunnen we een nieuwe staat introduceren.
‫Daarvoor gaan we naar staat, dan kunnen we als staat in de lucht zijn, en in deze staat zullen we niet
‫dezelfde animaties spelen.
‫We schakelen in wezen die animaties uit in de animatiegrafiek omhoog.
‫Op dit niveau zeggen we dat dit knooppunt zal overschakelen naar het spelen van verschillende animaties
‫in de Airborne State.
‫Dus we willen de Airborne State in en zorgen dat we hier een animatie hebben geselecteerd.
‫Dus ik ga van die resultaatspeld af en ik ga gewoon op zoek naar een sprong.
‫En in het bijzonder ga ik op zoek naar de sprong-apex-gevechtsgevechten, want dat heeft ons op Apex gericht, omdat dit
‫de top van onze sprong zal zijn en dan gaan we uit de animatiegrafiek die we gaan uitgaan naar
‫het voortbewegingsniveau en we zullen merken dat er hier een probleem is.
‫Er is geen manier voor ons om de Airborne State te bereiken, omdat er geen overgang is die ons daartoe leidt.
‫Dus wat we willen doen is slepen vanaf de grens van geaard op de Airborne State en daar willen
‫dubbelklikken omdat we hier een overgang willen creëren.
‫En ik ga gewoon een overgang doen op basis van een variabele die we momenteel niet hebben.
‫Dus als ik terugga naar mijn blauwdrukken bij een variabele en een is in de lucht als een
‫booleaanse variabele hier, dan kan ik dat overbrengen naar deze knooppunteditor voor Grounded Transition.
‫En dan kunnen we dat aansluiten zodat wat we zeggen is dat deze overgang mogelijk is als we in de lucht zijn
‫en dan willen we een omgekeerde overgang die gaat van in de lucht naar geaard.
‫En als we erop dubbelklikken, kunnen we een knoopknooppunt plaatsen dat de boolean in feite
‫negeert en dan kunnen we ook de boolean in de lucht plaatsen.
‫Zodat aan het einde wat we hier hebben, als we naar onze anim-preview gaan, het toevoegen aan het tabblad
‫naar rechts, we de schakelaar kunnen omdraaien en we naar die luchtstaat gaan terwijl we de luchtanimatie spelen.
‫En als we het weer omdraaien, gaan we terug naar onze geaarde voortbeweging.
‫En je kunt zien dat dit allemaal ook gaat werken met onze aim pitch.
‫Als ik de richtafstand naar boven beweeg, raak ik in de lucht.
‫Je kunt zien dat we blijven mikken in de richting die we zouden moeten richten.
‫Oké, dus ik heb een mini-uitdaging voor je.
‫Afgezien van het zo instellen van de staatsmachine, als je het nog niet hebt gevolgd, zou ik willen
‫dat je probeert en doet, is kijken of je een manier kunt vinden.
‫Op het moment dat we klikken in de lucht, krijgen we deze rare glitching-looping van deze animatie, deze animatie
‫in de lucht.
‫Kijk of je het zo kunt maken dat deze animatie geen lus maakt.
‫Kijk of je je weg kunt vinden in de anim-blauwdruk, die best moeilijk kan zijn om te navigeren, en kijk of
‫je die eigenschap kunt vinden.
‫Oké.
‫Welkom terug.
‫Dus hopelijk ben je gegaan en heb je dit een kans gegeven.
‫Dus waar zouden we beginnen om hierover na te denken?
‫Hoe zouden we beginnen om rond deze blauwdruk te navigeren?
‫Om te beginnen weten we dat dit probleem afkomstig is van onze voortbewegingstoestandsmachine.
‫Dus laten we daar naar binnen gaan en we kunnen zien dat het ding dat de staat speelt die momenteel
‫speelt, de luchtstaat is.
‫Dus laten we daarop ingaan en je kunt zien dat de jump apex-gevechten maar rond en rond gaan en
‫het veroorzaakt hier duidelijk dit probleem.
‫Dus als we op die animatie klikken en naar de details kijken, kun je zien dat we deze lusanimatie-eigenschap
‫hebben ingesteld.
‫Als ik dat uitschakel en dan die animatieblauwdruk opnieuw compileer, dan ga ik naar de is in de lucht.
‫Je kunt zien dat het die sprongtop slechts één keer speelt en dan blijft het die animatie vasthouden totdat we
‫het vinkje weghalen, waarna het teruggaat naar onze voortbewegingsstatusmachine.
‫Laten we eens kijken hoe dat allemaal werkt als we een beetje snelheid hadden, als we in beweging waren.
‫Dus hier zijn we aan het rennen.
‫We voegen toe is in de lucht.
‫Het gaat in onze sprongtop totdat we niet langer in de lucht zijn, op welk punt we teruggaan naar rennen
‫op de grond.
‫Dat was het dan voor deze lezing.
‫We hebben kennis gemaakt met een heel nieuw concept, veel om het idee van een animatie-statusmachine in ons op te nemen.
‫We hebben ongeveer twee toestanden gezien en hoe we erin komen via overgangen, en we hebben gezien hoe dat
‫kan worden aangedreven door een booleaanse waarde om ons in staat te stellen een sprongtoestand te hebben.
‫In de volgende lezing gaan we dit koppelen aan gameplay en de zaken verder verfijnen.