‫Het doel van deze video is dus om projectielen te hebben die daadwerkelijk door de lucht worden gelanceerd en zich gedragen zoals
‫projectielen zouden moeten doen.
‫Hé, welkom terug.
‫In deze video willen we ons projectiel zich als een projectiel gedragen en bewegen.
‫Nu zijn er verschillende manieren om hiermee om te gaan.
‫Een manier is om de locatie en rotatie van het projectiel zelf handmatig in te stellen.
‫Dit zou ons over het algemeen vereisen om de update elk frame uit te voeren, dus we zouden dit waarschijnlijk
‫in de tick-functie plaatsen.
‫Een andere manier is om eenvoudig een impuls aan het projectiel toe te voegen en de physics-engine het over te laten nemen.
‫In wezen oefenen we een kracht uit en lanceren we dat projectiel en laten we de zwaartekracht zijn werk doen,
‫en het projectiel vliegt gewoon de lucht in.
‫Een andere manier zou zijn om een bewegingscomponent te gebruiken.
‫Dit is een speciaal type component dat we aan onze projectielklasse zouden toevoegen.
‫En na het instellen van enkele parameters op de bewegingscomponent, zal de bewegingscomponent de beweging
‫voor de acteur afhandelen.
‫Nu is het zo dat Unreal Engine een ingebouwd type component heeft dat speciaal is gemaakt voor projectielen.
‫Dit maakt dus gebruik van enkele van de ingebouwde functies van Unreal Engine.
‫En door dit te doen, laten we de bewegingscomponent de beweging voor ons afhandelen op basis van de instellingen die
‫we bieden.
‫Dit is dus de methode die we gaan gebruiken.
‫Dus we willen een projectielbewegingscomponent toevoegen aan onze projectielklasse, en dit is wat de
‫beweging voor het projectielobject zal afhandelen.
‫Dus als we een projectiel in de wereld spawnen, kan de projectielbewegingscomponent die tot de projectielklasse behoort,
‫worden ingesteld en aangepast op basis van de variabelen van de projectielbewegingsklasse die we
‫instellen.
‫Nu gaan we er een paar instellen, zoals de beginsnelheid en de maximale snelheid en de
‫projectielbewegingscomponent zal het projectiel in de wereld voor ons verplaatsen.
‫Nu, hier is de Unreal Engine Documentation-pagina voor jou.
‫Projectiel bewegingscomponent.
‫Dit is het onderdeel waar we ons mee bezig houden en je zult zien dat er staat dat
‫Projectielbewegingsonderdeel de positie van een ander onderdeel bijwerkt tijdens het tikken.
‫Standaard wordt de routecomponent verplaatst.
‫Nu is hier de inclusie.
‫En als u verder naar beneden scrolt, ziet u enkele van de variabelen die kunnen worden ingesteld op
‫de bewegingscomponent.
‫Dus scroll hier eens doorheen en kijk wat de mogelijkheden zijn.
‫Nu voegen we een projectielbewegingscomponent toe aan onze klas op dezelfde manier als we andere componenten zouden toevoegen, wat betekent dat
‫u al weet hoe u dit moet doen.
‫Dus jouw uitdaging is om naar de projectielklasse te gaan en een aanwijzervariabele voor je projectielbewegingscomponent toe te voegen en
‫deze bloot te leggen door deze overal zichtbaar te maken.
‫En op die manier kunnen we de projectielbewegingscomponent gemakkelijk vanuit blauwdrukken bewerken.
‫Nu ga je het construeren in de projectielconstructor met behulp van create default sub-object.
‫Vergeet niet om de juiste koptekst op te nemen en de beginsnelheid en maximale snelheidsvariabelen van de projectielbewegingscomponent in
‫te stellen.
‫Kies nu je eigen waarden hiervoor en stel deze in in de constructor en speel vervolgens de game.
‫Je gaat de beginsnelheid en maximale snelheid aanpassen in het detailvenster door het onderdeel in de
‫projectielblauwdruk te selecteren.
‫En dit geeft je een beetje ervaring met het aanpassen van parameters en experimenteren als ontwikkelaar.
‫Dus pauzeer de video en maak nu de projectielbewegingscomponent.
‫Oké.
‫Dus ik ben hier in projectiel H en je hebt waarschijnlijk je component in het privégedeelte toegevoegd.
‫Dus als je dat deed, heb je de juiste instincten.
‫We gaan hier een privévariabele van maken.
‫Dat is goed.
‫Als je dat niet hebt gedaan, kun je het desgewenst eenvoudig naar het privégedeelte verplaatsen.
‫Dit zal een U-projectielbewegingscomponent zijn, en dat is een wijzer.
‫En we kunnen dit eenvoudig een projectielbewegingscomponent noemen.
‫Nu ga ik dit een U-eigenschap geven en dit eenvoudig overal zichtbaar maken.
‫Nu heb je het waarschijnlijk een categorie gegeven.
‫Zo niet, dan is dat prima, maar ik ga het een categorie geven en het beweging noemen.
‫We hebben dus de component projectielbeweging.
‫Ik ga de voorwaartse declaratie achterwege laten en kijken of ik weg kan komen met het
‫compileren hier in projectiel CP, ik ga het header-bestand opnemen.
‫Dus terug naar de documentatiepagina, ik ga deze include kopiëren en gewoon hier in projectiel plakken.
‫En nu ben ik klaar om mijn component te bouwen.
‫Dus ik ga zeggen projectielbewegingscomponent en ik ga gebruik maken van een standaard
‫subobject maken en het type zal je projectielbewegingscomponent zijn.
‫En voor de tekst noem ik dit onderdeel van de projectielbeweging gewoon zo.
‫Daar is mijn puntkomma en daar hebben we het.
‫Nu gaan we volgens de instructies de projectielbeweging instellen, de maximale snelheid van de component, en ik ga dit een beginsnelheid geven van,
‫laten we zeggen, 1300 F. Dit is iets waar we mee zullen experimenteren en door middel van speltesten
‫zal dit aanpassen aan de juiste waarde.
‫Nu ga ik de beginsnelheid van de projectielbewegingscomponent instellen, en ik zal het op dezelfde waarde instellen.
‫Dus de beginsnelheid zal zijn hoe snel het projectielcomponent is wanneer het begint.
‫En natuurlijk zal het nooit over de maximale snelheid gaan.
‫Laten we doorgaan en dit compileren.
‫Oké, dus ik krijg een compilatiefout en als ik naar boven ga, zie ik dat het verwijst naar projectiel h.
‫Dus laten we teruggaan naar projectiel H en er staat Projectiel H 27.
‫Het verwijst naar regel 27 en dat is deze regel hier.
‫En we begrijpen dat dit onderdeel van de projectielbeweging geen lid is van een projectiel.
‫Onthoud dat dit het type fout was dat we zagen toen we declaratie niet doorstuurden.
‫Dus we kunnen dit eenvoudig doorsturen met het class-sleutelwoord en opnieuw compileren en we krijgen een succesvolle
‫compilatie.
‫Dus nogmaals, dit is hoe we kunnen leren of een bepaald onderdeel standaard is inbegrepen.
‫En we zagen dat dit bij een geslaagde compilatie niet het geval is.
‫Laten we teruggaan naar de editor.
‫Oké, dus ik ben terug in de editor en ik ga in op blauwdrukken en acteurs en hier is het BFP-projectiel.
‫Dus hier NP-projectiel.
‫Nu zie ik dat de projectielbewegingscomponent hier is.
‫En in het detailpaneel kun je onder projectiel zien dat we initiële snelheid en maximale snelheid hebben en je kunt er
‫doorheen scrollen en een heleboel andere parameters zien die we ook kunnen instellen.
‫Dus laten we dit testen.
‫Ik ga op play drukken en met de linkermuisknop klikken en het bekijken.
‫Onze projectielen bewegen.
‫Ze vliegen door de lucht en stoppen zodra ze daadwerkelijk iets raken.
‫Nu willen we ze uiteindelijk laten opblazen en schade aanrichten.
‫Maar dit is een prima startpunt.
‫Laten we nu binnen vuurbereik gaan en kijken of de torentjes een projectiel zullen voortbrengen.
‫En dat doen ze natuurlijk niet.
‫En de reden is omdat we die TW-subklasse van variabele hebben.
‫Dus als je je afvraagt waarom de torentjes eigenlijk geen projectielen voortbrachten, dan heb je dat misschien niet
‫ingesteld.
‫Dus laten we doorgaan en naar vijvers gaan en piepvijver, torentje en open volledige blauwdruk.
‫Editor En we hebben de projectielklasse in de gevechtssectie geplaatst.
‫Dit is onze subklasse van, dus als we dit instellen op BP-projectiel, zou onze toren nu ook projectielen moeten
‫gaan spawnen.
‫Dus laten we binnen vuurbereik komen en daar hebben we het.
‫Het schiet projectielen op ons af.
‫Dit ziet er dus geweldig uit.
‫Dus we hebben nu projectielen.
‫Laten we dus eens kijken naar ons sectieplan.
‫We hebben al een tank gemaakt die over de hele wereld kan bewegen en we verwerken nu
‫invoer met de WASD-toetsen en muisklikken.
‫We hebben een vijandelijke turret-klasse gemaakt, we noemden het toren in C++ en we hebben vuurfunctionaliteit met
‫projectielen toegevoegd.
‫Nu moeten we in dit spel gezondheidsschade en vernietiging aanpakken.
‫Dus dat zijn onze volgende stappen en die komen naar voren in de video's die nog komen.
‫Dus nu we een projectielbewegingscomponent hebben toegevoegd, hebben we nu echte projectielen.
‫Ik zie je in de volgende video wanneer we beginnen te praten over hoe we deze projectielen daadwerkelijk
‫kunnen laten ontploffen en schade kunnen aanrichten.
‫Ik zie je snel.