‫Hallo en welkom.
‫In deze lezing gaan we leren over het verschil tussen pionnen zoals deze man
‫en karakters zoals deze man.
‫En we gaan door met het opzetten van een karakterblauwdruk en karakter C++ acteur om er zo uit te zien, zodat
‫we onze Wraith mesh hebben.
‫Laten we erin duiken en kijken hoe het gedaan is.
‫Oké, dus het eerste deel van ons grotere projectplan waarmee we willen beginnen, is de
‫spelersbeweging, nummer één.
‫Dat is wat we fundamenteel vinden van de meeste games, niet alleen schietspellen, dan zouden ze gaan over
‫animatie en schieten en gezondheid en dood en al die andere dingen die we willen bereiken.
‫Maar het eerste dat moet worden aangepakt, is de beweging van de speler.
‫Om dit te doen, gaan we een karakterklasse maken.
‫Wat is een karakterklasse?
‫Eerst en vooral is er een onderscheid tussen een pion en een personage.
‫De pion is alles wat je als speler kunt bezitten.
‫We zullen later meer over bezit hebben, maar je hebt er al een beetje over gezien.
‫Maar het idee hier is dat de pion het ding is dat wordt bestuurd door de speler.
‫Een karakter?
‫Wat is een personage?
‫Nou, het eerste wat je moet zeggen is dat het personage een pion is.
‫Het erft rechtstreeks van de pionnenklasse.
‫Hij kan dus alles doen wat de pion kan.
‫En meer nog, een personage is een specialisatie van een pion.
‫Het voegt karakterachtige functies toe.
‫Nou, dat is niet erg informatief.
‫Dus wat voor soort dingen zijn karakter als over een karakter?
‫Nou, bijvoorbeeld beweging die rondloopt zoals een normaal persoon zou doen, op de grond rondlopen,
‫kunnen springen, kunnen rennen, al dat soort dingen.
‫Dat is eerder het domein van een personage dan van een pion, omdat pionnen bijvoorbeeld als ruimteschepen kunnen
‫rondvliegen.
‫Het zijn geen mensen zoals, dus zo is een personage.
‫En het voegt ook dingen toe zoals NAF mesh-bewegingen, die we meer zullen zien als we bij
‫de AI-sectie van deze sectie komen, en dat zal ons helpen het personage te verplaatsen, obstakels te vermijden en dat
‫soort dingen.
‫Dus hoe gaan we verder en creëren we een personage?
‫Heel veel.
‫Hetzelfde als we elke andere C++-klasse zouden maken.
‫We mogen een nieuwe, nieuwe C++-klasse toevoegen.
‫En je kunt hier tussen de opties zien, er is -- en er is karakter.
‫Nu ga ik door en geef je meteen een uitdaging om de Blueprint Children en de
‫C++ te maken.
‫Dus we gaan eerst en vooral mee om de C++ te maken.
‫Dit zal geen deel uitmaken van je uitdaging.
‫We gaan een pion voor onszelf creëren.
‫Dus ik bel gewoon mijn -- want omdat we de --.
‫We willen het verschil zien tussen dat en het personage.
‫Dus we gaan door en creëren die klas en als dat eenmaal doorgaat en eindigt, zul je eindigen met een
‫-- klas, het soort dingen dat je zult hebben gezien voordat het begint, speel een technische
‫set-up, speel invoercomponent, enzovoort..
‫Dus wat we gaan doen, is dat we dezelfde procedure opnieuw gaan doen, een nieuwe C++-klasse toevoegen.
‫Deze keer gaan we een personage maken, ga naar de volgende.
‫En in plaats van het iets fantasieloos te noemen, zoals mijn personage, noem ik
‫het het shooter-personage, wat meer beschrijft wat voor soort personage we hier proberen te creëren.
‫Ik ga door en maak die klas aan.
‫En als dat klaar is met bouwen, kun je zien dat we een vrij gelijkaardig uitziende kop krijgen, een bestand.
‫In feite is vrijwel alles identiek, behalve wat het erft van de tekenklasse in plaats
‫van de --.
‫Het is heel erg vergelijkbaar, behalve dat.
‫Dus om de verschillen te zien, moeten we kijken naar de blauwdrukkinderen van deze dingen om te
‫zien wat voor soort componenten er zijn.
‫Dus dat wordt een uitdaging om mee te werken aan het maken van de C++, zoals ik
‫net deed, een blauwdrukkind toevoegen voor elk van de my spawn- en de shooter-personages.
‫Welke verschillen kun je dan zien als je die twee afzonderlijke blauwdrukken opent, de video pauzeert en
‫het probeert.
‫Hé, welkom terug.
‫Dus laten we dit een kans geven.
‫Als we naar de editor gaan en ik ga gewoon naar de bovenkant van mijn inhoudsmap en dan
‫ga ik wat nieuwe blauwdrukken toevoegen.
‫Dus ik ga met de rechtermuisknop klikken om een blauwdrukklasse te maken.
‫En in plaats van van een van deze te erven, ga ik alle klassen selecteren en zoeken naar de my
‫-- class, die een kind is van de --, zoals we kunnen zien, selecteer die en ga en maak een override van
‫Dat.
‫Ik noem het de BP-onderstreping mijn -- om die conventie te gebruiken, die ons helpt onderscheid te maken
‫tussen de C++ en de blauwdruk.
‫Dus ik ga dan met de rechtermuisknop klikken en een andere blauwdrukklasse maken.
‫Deze keer ga ik op zoek naar het personage van de schutter.
‫En selecteer die.
‫En voorspelbaar noem ik dat BP-underscore-schietpersonage.
‫Het helpt ons een beetje om niet al te fantasierijk te zijn over het benoemen van dingen.
‫Je wilt niet fantasierijk zijn over het benoemen van die blauwdrukkinderen.
‫Je wilt gewoon kunnen zeggen dat het precies dezelfde naam zal zijn, alleen met een BP-onderstrepingsteken op de
‫voorkant.
‫Dus laten we doorgaan en die twee openen en ze in het hoofdvenster plaatsen, zodat we ze mooi en gemakkelijk kunnen
‫vergelijken.
‫Open de shoot een karakterstip in het hoofdvenster en we kunnen meteen enkele verschillen zien.
‫De pion heeft in principe niets aan de hand in de componentweergave.
‫Het heeft een standaard scene root en niets anders.
‫We gaan naar het personage van de schutter.
‫U kunt echter zien dat er om te beginnen nog een paar dingen aan de hand zijn.
‫We hebben hier een capsulecomponent, wat al een beetje impliceert dat het verwacht dat
‫een mensachtige vorm in die capsule past.
‫De capsule is voor het doen van ruwe fysica en manipulatie of botsing met het terrein.
‫En dan is natuurlijk iets dat daar heel mooi in past een mensachtig personage.
‫We hebben een pijlcomponent die ons in feite vertelt welke weg vooruit is voor dit personage.
‫En dan hebben we een mesh, die is geërfd.
‫Het is geërfd van de C++.
‫In feite is het van twee niveaus hoger geërfd, omdat we hier geen mazen hebben gedefinieerd in het blad, een
‫teken.
‫Ze moeten in plaats daarvan zijn gedefinieerd in de A-tekenklasse.
‫Dus die mesh-component sijpelt helemaal naar beneden naar deze blauwdrukklasse, en het heeft nog
‫niets in die mesh.
‫Dus we kunnen doorgaan en daar een gaas plaatsen.
‫Dus laten we doorgaan en dat proberen.
‫Ga naar het detailvenster, naar het skeletmesh.
‫En we willen eigenlijk ons Wraith-personage erin stoppen.
‫Dus ik ga gewoon Wraith hier selecteren en dan gaan we.
‫Het heeft hem een beetje van de grond gebracht.
‫Dus wat ik wil doen is doorgaan en zijn voeten aanpassen.
‫Dus ze ontmoeten de onderkant van de capsule zo goed als ik kan.
‫Het lijkt erop dat ik dat de eerste keer redelijk goed had.
‫En dan willen we hem ook uitlijnen zodat hij naar die voorwaartse pijl wijst, zodat we op die
‫manier een beetje magische rotatie van 90 graden kunnen doen en we zijn gouden.
‫Ik drukte op de all-toets om bij de rotatie te komen, wat trouwens, of
‫je zou deze kleine widgets rechtsboven in je viewport kunnen gebruiken om tussen je vertaling en rotatie te komen.
‫Een ander ding dat het vermelden waard is hier in de componenthiërarchie, afgezien
‫van het feit dat het deze mesh, de pijl en de capsulecomponent heeft, is dat we deze karakterbewegingscomponent hebben.
‫Dit is wat volledig verantwoordelijk is voor het karakter geven zoals beweging, kunnen lopen en
‫rennen, enz..
‫Je kunt hier in het detailvenster zien dat we een aantal bewegingsinstellingen hebben, we hebben de
‫zwaartekrachtschaal.
‫Dus je zou het kunnen laten lijken alsof we op Mars of op de maan of op Jupiter spelen.
‫Wat je ook wilt doen, je kunt de zwaartekrachtschaal veranderen, het kan leuk zijn.
‫We hebben standaard bewegingstypes voor of we ons op het land bevinden, of we ons op
‫het water bevinden, al dit soort dingen, wandelen, springen, informatienetwerkdingen.
‫Dit werkt automatisch goed in multiplayer-games.
‫Het heeft dat allemaal ingebouwd.
‫Dus eigenlijk wordt er hier al veel voor ons gedaan.
‫Dus daarom willen we een karakter gebruiken over een pion waar we al deze bewegingscode helemaal opnieuw zouden
‫moeten schrijven als we het karakter zouden gebruiken.
‫Het is al ingesteld met deze component voor het verplaatsen van personages voor ons, en dat zijn lang niet alle dingen
‫die het personage ons biedt.
‫Het biedt ook veel aardigheden en leuke functies die we in de basisklasse kunnen gebruiken om ons werk nog
‫gemakkelijker te doen.
‫Dat gaan we zien in de komende colleges.
‫Dus het laatste dat we misschien willen doen, is ervoor zorgen dat dit personage de pion is die ze
‫op onze kaart krijgen.
‫Dus de manier waarop ik dit ga doen, gaat weer naar de basis van onze inhoud.
‫En dit is revisie.
‫Zoveel uitdaging voor jou.
‫Als je het wilt, kun je doorgaan en een kloon van deze kaart en een blauwdruk-spelmodus van deze
‫kaart maken die een app-shooter-personage zal voortbrengen.
‫Ik moedig je aan om deze vele uitdagingen aan te gaan, evenals de belangrijkste grote uitdaging.
‫Ik ga verder en geef daar geen uitdaging dia voor.
‫Dus we hebben de modulaire sci-fi seizoen één startbundel-verzamelingskaarten.
‫Ik heb hier kaart één.
‫Ik ga eigenlijk gewoon doorgaan en dat voorlopig kopiëren naar de route van mijn project.
‫En we kunnen de zaken wat later reorganiseren als de route wat meer
‫spullen krijgt en de organisatiestructuur duidelijker wordt.
‫Ik ga die kaart hernoemen naar Sandbox.
‫We gaan het instellen als de standaard van het project door naar de projectinstellingen, kaarten en modi te
‫gaan en het vervolgens te wijzigen van Kaart één in Sandbox voor zowel het spel als de editor.
‫Dan ga ik een spelmodus maken.
‫Dus ik ga met de rechtermuisknop klikken en een blauwdrukklasse maken.
‫Ik ga een basisblauwdruk voor de spelmodus maken.
‫Noem het BP, onderstreping shooter-spelmodus.
‫Ik kan dat openen.
‫Ik heb geen C++ nodig in deze basisklasse, dus ik leid het eigenlijk niet af van C++.
‫Maar als we het eenmaal nodig hebben, kunnen we de blauwdrukken van de ouders altijd rippen naar C++-klassen die we zelf hebben bedacht.
‫Dus wat ik ga doen is overgaan tot de details.
‫Als dat niet is geselecteerd, moet je naar de standaardinstellingen van de klas gaan hier in de bovenste balk
‫en dan kun je naar het klassengedeelte gaan en zien dat het zoiets als de standaard moet zijn - klasse zoals zo.
‫En we gaan op zoek naar het BP-shooter-personage in de blauwdrukversie
‫omdat de mesh is ingesteld en dan gaan we terug naar onze sandbox, openen onze sandbox en veranderen de spelmodus.
‫De reden dat ik een sandbox heb gemaakt, is omdat ik de originele kaart niet wil bewerken, omdat ik altijd
‫naar die map wil teruggaan als referentie als ik mijn sandbox heb verprutst.
‫Laten we dus naar de vervolgkeuzelijst met blauwdrukken in de bovenste balk gaan en de spelmodi selecteren die momenteel zijn ingesteld op basis van
‫de spelmodus.
‫Ik ga in plaats daarvan het BP underscore-schietspel selecteren.
‫Spelmodus.
‫Shooter-spelmodus, eerder.
‫En het laatste stukje van de puzzel zal zijn om een speler erin te stoppen, ergens te beginnen.
‫In feite realiseerde ik me dit niet, maar de kaart bevat al een spelerstart.
‫Dus het toevoegen van de volgende betekent dat je nu per ongeluk op twee verschillende plaatsen kunt spawnen.
‫We zullen dit later in de cursus oplossen.
‫Maar zodat je het weet, als je op een andere locatie spawnt en je in de war raakt, is dat
‫de reden.
‫Dus ga naar je plaats, het tabblad Acteurs naar links.
‫Als je het niet hebt, ga dan naar het venster en selecteer een plaatsacteurs om het te laten verschijnen.
‫En we willen basisacteurs.
‫We willen dat de speler actief begint.
‫Ga je gang en breng dat binnen.
‫Het geeft ons deze kleine capsule met een voorwaartse pijl die ons laat zien waar Spawn gaat spawnen, zodat we door kunnen gaan
‫en op play kunnen drukken.
‫En het is niet meteen duidelijk of dit heeft gewerkt of niet.
‫Dus wat je moet doen is naar F8 gaan om uit je pion te werpen om te ontgrendelen, bezit het.
‫En als je je omdraait, kun je dat zien.
‫En ja hoor, we hebben hier ons karakter.
‫Hij had alleen een camera ergens in zijn kruis, helaas.
‫En dus gaan we dat later oplossen.
‫Maar op dit moment hadden we mesh op zijn plaats en we gaan van daaruit verder om de animaties op te knappen, een personage
‫van een derde persoon enzovoort te krijgen, en vooral om het in beweging te krijgen.
‫Dus we hebben op dit moment het juiste shooter-personage.
‫Het is geen third person camera.
‫Dat gaan we later oplossen.
‫Maar eerst en vooral gaan we onze beweging aan het werk krijgen.
‫Dus laten we duiken naar de volgende lezing.