Teknologian jakaminen

UEC Unreal 5 kolmannen persoonan räiskintäpeli (2)

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

UEC++ Unreal 5 kolmannen persoonan räiskintäpeli (2)

Johdettuja kranaattiaseita

  • Luo uusi, joka on perittyWeaponalaluokkaa johdettuna kranaattiaseena
    Lisää kuvan kuvaus tähän
  • TahtoaWeaponluokassaFireToiminnon lisäysvirtualAvainsanasta tulee virtuaalinen funktio, jotta kranaattiluokka voidaan periä ja kirjoittaa uudelleen.
    Lisää kuvan kuvaus tähän
  • olla olemassaProjectileWeaponkeskikokoinen uudelleenkirjoitusFireFunktio, luo uusi mallimuuttuja ammusten luomista varten
    Lisää kuvan kuvaus tähän
  • FireFunktioiden uudelleenkirjoituslogiikka
    Lisää kuvan kuvaus tähän
  • koodi
	//生成的投射物
	UPROPERTY(EditAnywhere,BlueprintReadOnly,Category = "ProjectileWeapon")
	TSubclassOf<AActor> ProjectileClass;
//--------------------------------------------------------------------------------------------------
void AProjectileWeapon::Fire()
{
   
	AActor* MyOwner = GetOwner();
	if (MyOwner)
	{
   
		FVector EyeLocation;
		FRotator EyeRotation;
		MyOwner->GetActorEyesViewPoint(EyeLocation, EyeRotation);

		FActorSpawnParameters SpawnParams;
		//设置投射物生成参数:即使生成位置有碰撞,也要强行生成投射物,不进行碰撞检测处理
		SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn;
		//获取枪口位置
		FVector MuzzleLocation = SkeletalComponent->GetSocketLocation(MuzzleSocketName);
		//生成并发射投射物
		GetWorld()->SpawnActor<AActor>(ProjectileClass, MuzzleLocation, EyeRotation, SpawnParams);
	}
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

Johdettuja kranaattimaisia ​​aseita

  • Luo suunnitelma johdetuista kranaattiluokista ja lisää siihen verkkomalli
    Lisää kuvan kuvaus tähän
  • Vaihda ruudukkomallin paikan nimi meilleC++kohdassa määritelty nimi
    Lisää kuvan kuvaus tähän
  • LuodaActor Suunnitelmaa käytetään luodina, ja siihen lisätään kantoraketti ja palloverkko Laukaisimen alkunopeudeksi ja maksiminopeudeksi on asetettu 2000, ja ammuksen rebound-efekti otetaan käyttöön. Palloverkko mahdollistaa fysiikan simuloinnin.
    Lisää kuvan kuvaus tähän
    Lisää kuvan kuvaus tähän
  • Lisätty kranaatin asesuunnitelma luodakseen ammuksia, jotka paljastavat suunnitelmassa olevat luodit.
    Lisää kuvan kuvaus tähän
  • Muuta hahmosuunnitelmassa ilmentymän asetyyppi haubitsa-aseeksi ja vaihda sitten ilmentymän objekti emoluokan aseeksi. Tämä helpottaa ongelman testaamista funktiota kutsuttaessa.
    Lisää kuvan kuvaus tähän
  • Lisää räjähdystapahtuma luotisuunnitelmaan ja kirjoita logiikka
    Lisää kuvan kuvaus tähän
  • olla olemassaBeginPlayLooginen tapahtuma kutsutaan klo
    Lisää kuvan kuvaus tähän
  • operaation tulos
    Lisää kuvan kuvaus

Sniperin zoomaustehoste

  • Luo merkkiluokkaan neljä uutta muuttujaa, joista yhtä käytetään zoomauksen etenemiseen, toista käytetään zoomauksen näkökentän osoittamiseen, yhtä käytetään oletusnäkymäkentän saamiseksi ja toista käytetään kuvaamaan lineaarinen interpolointi uuteen perspektiiviin.
    Lisää kuvan kuvaus tähän
  • Luo uusi hiiren kakkospainikkeen toimintosyöte
    Lisää kuvan kuvaus tähän
  • Luo uusi käsittelytoiminto hiiren kakkospainikkeen toimintoja varten
    Lisää kuvan kuvaus tähän
  • Määritä uusi liikekulma ja nopeus liikkeen interpoloinnille
    Lisää kuvan kuvaus tähän
  • olla olemassaBeginPlayOta oletuskatselukulma-alue sisään
    Lisää kuvan kuvaus tähän
  • Napsauta hiiren kakkospainikkeella Bind Function Logic ja Set New Perspective Linear Interpolation Range Logic
    Lisää kuvan kuvaus tähän
  • Sidossyöttötoiminnot
    Lisää kuvan kuvaus tähän
  • Luo uusi toimintosyöte moottoriin ja lisää se kartoitukseen
    Lisää kuvan kuvaus tähän
    Lisää kuvan kuvaus tähän
  • Sido toiminnot merkkisuunnitelmaan
    Lisää kuvan kuvaus tähän
  • operaation tulos
    Lisää kuvan kuvaus

Luo konsolimuuttujia

  • Luo uusi staattinen muuttuja aseluokkaan ohjauskonsolin muuttujaksi, jolla ohjataan ammutaanko ja piirretäänkö viivoja, ja luo uusi automaattinen hallintakonsolin muuttujaluokka
    Lisää kuvan kuvaus tähän
  • FAutoConsoleVariableRef: Luokka konsolimuuttujien automaattiseen hallintaan
FAutoConsoleVariableRef ACVRDebugWeaponDrawLine(TEXT("COOP.DebugWeapons"), DebugWeaponDrawLine,TEXT