‫Hoi.
‫Welkom terug.
‫We stellen variabelen bloot aan blauwdrukken.
‫En nu willen we het hebben over het blootstellen van onze componenten.
‫Dit stelt ons in staat om enkele eigenschappen in te stellen, zoals de meshes op onze statische mesh-componenten, evenals
‫het positioneren van onze capsule en het spawn-punt van het projectiel.
‫Nu zijn we terug hier in VS Code en we hebben al onze testvariabelen.
‫En voordat we beginnen met het blootleggen van onze privécomponentvariabelen, zijn er nog een paar eigendomsspecifieke dingen
‫waar we meer over moeten leren.
‫Ten eerste bevinden al onze testvariabelen zich in het openbare gedeelte en een aantal van onze variabelen
‫hier worden blootgesteld aan de gebeurtenisgrafiek die leestoegang en rechtstoegang mogelijk maakt, en deze zijn niet toegestaan in
‫het privégedeelte.
‫Als ik bijvoorbeeld onze zichtbare overal int neem en overal int bewerk en deze knip en plak ze hier
‫in het privégedeelte samen met onze componenten.
‫Dit is wat er gebeurt als we hier proberen te compileren.
‫We zien in onze terminal een aantal fouten.
‫We zien dat blauwdruk, lezen, schrijven niet mag worden gebruikt voor privéleden en hetzelfde zegt
‫over Blueprint Alleen lezen.
‫Dus wat als we lees- en schrijftoegang willen in de gebeurtenisgrafiek voor privéleden?
‫Wel, er is een manier om dit te omzeilen.
‫We kunnen nog steeds toegang hebben tot privévariabelen in de gebeurtenisgrafiek.
‫We moeten nog een invoer toevoegen aan de U.
‫Eigenschappenmacro en die invoer ziet er als volgt uit.
‫We zeggen meta is gelijk aan haakjes staan privétoegang toe gelijk aan en tussen aanhalingstekens waar.
‫Dit ziet er nu best raar uit.
‫Het is een soort nachtmerrie van syntaxis, maar zo ziet het eruit.
‫Je eigenschapmacro's staan metadata toe en metadata is gewoon een mooi woord voor data die informatie geeft over
‫andere data.
‫Dus we hebben deze meta gelijk aan en als we privétoegang toestaan gelijk aan true gebruiken, dan kunnen we deze variabelen blootstellen
‫aan de gebeurtenisgrafiek, ook al zijn ze privé.
‫Nu, als je een doorzetter bent en je denkt niet dat het een heel goed idee is om privé toegang te geven tot een variabele, dan
‫hoef je dit niet te doen.
‫Dit is gewoon een ander hulpmiddel in uw gereedschapskist waarmee we privévariabelen aan blauwdruk kunnen blootstellen.
‫En aan de C++-kant zijn deze nog steeds privé.
‫Je hebt hier nog steeds geen toegang toe vanuit andere klassen.
‫Dus je hebt die inkapseling aan de C ++ kant.
‫Dit geeft je alleen de mogelijkheid om deze in blauwdrukken te krijgen en er wijzigingen in aan te brengen.
‫En echt in blauwdrukken, het is een soort andere wereld.
‫Normaal gesproken ga je dingen niet blootstellen aan blauwdrukken die iemand zou kunnen ingaan en veranderen en
‫mogelijk het spel breken.
‫Maar het is wel handig om te weten hoe je dit doet.
‫Dus we gaan deze meta privétoegang geven tot zowel overal zichtbaar, int en overal bewerken.
‫En dus laten we dit compileren.
‫En nu zien we dat we een succesvolle compilatie hebben, ook al hebben we blueprint-herschrijvingen en
‫blueprint alleen-lezen op variabelen in een privé-sectie.
‫Nu terug hier in BP Pond Tank in de gebeurtenisgrafiek, kan ik met de rechtermuisknop klikken en overal bewerken typen
‫en hier zien we overal bewerken waar we nog steeds toegang toe hebben en als ik zoek naar zichtbaar, zie ik overal zichtbaar
‫waar we kunnen krijgen en stel het in.
‫Het laatste wat ik je ga laten zien dat we aan je eigenschappen kunnen toevoegen, is een categoriebericht
‫hier in het detailvenster.
‫Deze variabelen die we hebben toegevoegd, vallen onder deze categorie op basis van dit is de naam van de klasse en dat is
‫waar ze standaard naartoe gaan.
‫Maar merk op dat we ook andere variabelen hebben geërfd door deze klasse en ze zijn elk in hun eigen categorieën.
‫Nu kunnen we onze eigen categorie maken voor deze blootgestelde variabelen, en dat doen we door categoriegelijken toe te voegen.
‫En tussen aanhalingstekens kunnen we dit een categorie geven.
‫Dus ik zou dit super duper-variabelen kunnen noemen.
‫Nu ga ik hier een komma plaatsen omdat ik dit hier in de U heb geplaatst.
‫Eigenschapmacro als een van de ingangen, en alle ingangen moeten worden gescheiden door komma's.
‫Ik ga dit kopiëren en toevoegen aan de U-eigenschap hier om het ook ergens int te bewerken.
‫Dus nu zouden deze in hun eigen categorie moeten staan, genaamd super duper-variabelen.
‫Laten we compileren en terug hier in de editor, bekijk dit eens.
‫We hebben super duper-variabelen en onze variabelen zijn hier en ik kan met de rechtermuisknop in de gebeurtenisgrafiek zoeken
‫naar super en het bekijken.
‫We hebben super duper-variabelen en onze variabelen zijn hier.
‫Dit is dus een leuke manier om onze variabelen te ordenen en ze een beetje gemakkelijker te vinden te maken.
‫Dus ik heb hier een paar nieuwe dingen aan onze tafel toegevoegd.
‫We kunnen privétoegang geven, we kunnen privévariabelen nemen en ze nog steeds blootstellen aan
‫de gebeurtenisgrafiek met deze metaspecificaties.
‫En we kunnen variabelen ook hun eigen categorie geven om ze in blauwdrukken te ordenen.
‫Dus nu je genoeg manieren kent om de toegang tot onze variabelen in Blueprint te regelen, ga
‫je de eigenschap you invullen voor de componenten die nu beslissen.
‫Hun toegangsniveaus.
‫U wilt deze overal zichtbaar willen hebben, omdat overal bewerken niet iets is dat u aan uw
‫componenten wilt geven.
‫Dit betekent dat u die aanwijzervariabele daadwerkelijk kunt bewerken en dat we de aanwijzer niet willen wijzigen.
‫Het moet altijd naar het object wijzen.
‫We construeren het in de constructor, maar je kunt ook beslissen of je ze lees-,
‫schrijftoegang geeft in de gebeurtenisgrafiek, ze een categorie geeft.
‫Dit stelt ons in staat om onze variabelen georganiseerd te houden.
‫Als je ze nu een blauwdruk geeft, lees, schrijf of blauwdruk alleen-lezen.
‫U moet privétoegang toestaan met die meta gespecificeerd aan omdat dit privévariabelen zijn.
‫Als u de componenten nu heeft blootgesteld aan blueprints, kunt u enkele eigenschappen instellen in de
‫standaardblueprint.
‫U kunt de statische mesh-componenten hun eigen statische meshes geven.
‫Dus zet dat in zowel de tank als in de torenblauwdruk en plaats de capsule.
‫Dus het omvat ruwweg het volume van de mazen en positioneer het projectiel-spawnpunt, plaats het
‫op een punt waar projectielen logisch zouden kunnen spawnen.
‫Dus pauzeer de video en stel onze componenten bloot aan blauwdruk.
‫Oké.
‫Dus hier zijn we in ons privégedeelte en we willen deze componenten graag blootleggen.
‫Nu, eerst ga ik mijn capsulecomponent overal zichtbaar maken, en ik ga gewoon besluiten om deze
‫blauwdruk alleen-lezen te geven, zodat ik toegang heb tot de capsulecomp-variabele in de gebeurtenisgrafiek, maar ik kan
‫deze niet instellen.
‫Nu ga ik deze de categorie geven en voor onze componenten hier, ga ik het nu
‫de categoriecomponenten geven omdat ik blauwdruk alleen-lezen gebruik, ik ga meta gebruiken om privétoegang toe te staan
‫is gelijk aan waar.
‫Dus dat ga ik daar neerzetten.
‫En voor de rest van mijn componenten ben ik blij met dezelfde specificaties voor eigenschappen, dus
‫ik ga ze allemaal dezelfde specificaties geven.
‫Nu ga ik dit compileren en hier in de editor, ik ga op de viewport klikken zodat
‫ik echt kan zien wat ik hier doe en ik kan base mesh selecteren.
‫En voor de statische mesh-eigenschap, aangezien we in de tankblauwdruk zitten, ga ik de tankbasis
‫kiezen.
‫Dat is de basis van de tank.
‫Nu kan ik de turret mesh selecteren en voor de statische mesh ga ik de tank turret selecteren.
‫En nu ziet onze tankblauwdruk er eigenlijk uit als een tank.
‫Voordat ik het spawn-punt van het projectiel instel, wil ik de capsulecomponent aanpassen.
‫Dus het omvat ongeveer het volume van het gaas.
‫Nu de capsulecomponent is geselecteerd, hebben we deze eigenschappen capsule halve hoogte en capsuleradius.
‫Ik ga de straal en de halve hoogte van de capsule schalen zodat dit er ongeveer de
‫juiste vorm uitziet.
‫En ik moet mijn tank zo plaatsen dat hij onderaan is, omdat onze capsulecomponent
‫de wortelcomponent is.
‫We moeten alle andere componenten relatief ten opzichte van de root verplaatsen, zodat ik de basis mesh kan selecteren en naar beneden
‫kan verplaatsen.
‫En om het precies goed te krijgen, kan ik mijn blik op deze manier richten, of ik kan hier komen waar perspectief
‫staat en selecteren, toch?
‫En ik ben nu in de orthografische modus.
‫Deze plek is alles in een vliegtuig, dus ik kan dingen verplaatsen en ze pakken.
‫Op dit moment ga ik snappen uitschakelen, zodat ik dit nauwkeuriger kan positioneren, en ik denk dat dat er
‫best goed uitziet.
‫Nu ga ik terug naar de perspectiefmodus zodat ik dit kan zien en ervoor kan zorgen dat
‫alles er goed uitziet en ik zal mijn capsulecomponent selecteren en ervoor zorgen dat de schaal precies goed is.
‫Dit kan een beetje aanpassing vergen om het goed te krijgen, maar met een paar aanpassingen kun je het er best goed
‫uit laten zien.
‫Hier ben ik dus tevreden mee.
‫Vervolgens wil ik het spawnpunt van het projectiel positioneren.
‫Ik zet snapping weer aan en verplaats het hier vlak voor het vat.
‫Dit ziet er dus best goed uit.
‫Nu ga ik dit opslaan en nu is het tijd om de BP-vijvertoren te plaatsen.
‫Dus hier in de BP-vijvertoren, ga ik het basisgaas plaatsen.
‫Dus laten we de torenbasis selecteren en ik ga het torentje in het torentje zetten.
‫Daar gaan we.
‫Nu ga ik de capsule comp opschalen en de basis mesh naar beneden verplaatsen en dit gewoon aanpassen totdat ik het
‫precies goed heb.
‫En nogmaals, ik kan naar de orthografische weergave gaan en snappen uitschakelen en dit ongeveer zo positioneren als ik
‫zou willen en weer in perspectief gaan.
‫Ik denk dat dat er best goed uitziet.
‫Het laatste is het spawnpunt van het projectiel.
‫Ik ga het snappen weer inschakelen en het precies hier voor de loop plaatsen en ik zal de snapstappen
‫op vijf zetten, zodat ik het daar precies vooraan kan plaatsen.
‫Zorg er nu voor dat het spawnpunt van het projectiel niet te dicht bij de loop is.
‫We gaan vanaf dit punt projectielen spawnen.
‫En iets dat sommige studenten heeft doen struikelen, is dat hun spawn-punt te dicht bij de loop is
‫en dat er daar een botsing is, wat kan resulteren in complicaties bij het spawnen van projectielen.
‫Dit kan nu eenvoudig worden opgelost door ervoor te zorgen dat het spawn-punt zich op een goede afstand van het vat bevindt.
‫En we zullen dit helemaal aan het einde van dit gedeelte van de cursus oppoetsen.
‫Oké, dus het laatste wat ik ga doen is een paar van deze in de wereld plaatsen.
‫Ik heb hier al een BP-vijverbak.
‫Ik ga dat op de grond zetten.
‫En laten we een paar voorbeelden van BP-vijvertorentje naar binnen slepen.
‫Ik ga er hier een plaatsen en het draaien zodat het naar buiten wijst en dan ga ik verder en plaats
‫er gewoon een op elke hoek hier.
‫Zodat ze deze centrale structuur kunnen bewaken.
‫En dit lijkt een beetje meer op het eindproduct.
‫Daar gaan we.
‫En natuurlijk, als ik dat zou willen, zou ik dit van bovenaf en in orthografische topmodus kunnen bekijken.
‫Ik kan deze nauwkeuriger positioneren.
‫Maar dit is natuurlijk iets minder belangrijk in een gepolijst spel.
‫Je wilt dat alles er precies goed uitziet.
‫Oké, terug naar de perspectiefmodus.
‫Dit ziet er best geweldig uit.
‫Dus verwijzend naar ons sectieplan, we hebben onze tank gemaakt en ons doel is dat deze over de hele wereld
‫gaat.
‫Dus in de komende lezingen gaan we leren hoe we dat moeten doen.
‫Dus in deze lezing hebben we onze componenten blootgesteld aan blauwdrukken en hebben we enkele eigenschappen in de blauwdrukken
‫voor de tank en voor de toren gezet.
‫Uitstekende vooruitgang.
‫Ik zie je in de volgende video.