Cara melanjutkan membuat peta di UE4

Hari baik untuk semua


Dalam artikel sebelumnya, kami menjelaskan cara membuat level dengan mengambil bagian Yandex.Map sebagai referensi. Masih berbicara tentang jalan "paving" dan tentang nuansa yang saya temui menggunakan Komposisi Dunia, sebagai metode mengoptimalkan peta besar.



Jalan


Tentu saja, jalan yang “digambar” oleh tekstur level-stretched sangat cocok untuk digunakan (misalnya, untuk simulator udara), tetapi untuk simulator mobil diperlukan pendekatan yang lebih rinci. Komponen yang paling cocok untuk membuat jalan di UE adalah Spline, setidaknya "bagian kontinu panjang". Saya belum menemukan persimpangan dan persimpangan, kemungkinan besar mereka harus membuat objek terpisah dengan tangan mereka.


Spline ada dua jenis: Blueprint Splines dan Landscape Splines . Yang pertama memiliki kemampuan kustomisasi yang luar biasa dan dibongkar dengan baik.Game Epik di saluran. Dengan bantuan mereka, Anda dapat mengontrol pembuatan objek di sepanjang jalan sekaligus (plang, pagar, parit, saluran listrik), tetapi saya tidak menemukan fungsionalitas untuk digabungkan dengan lanskap di Blueprint Splines, dan pas setiap meter jalan dengan tangan saya di bawah lanskap (atau sebaliknya) tidak dengan apa Anda ingin memulai proyek. Oleh karena itu, saya memilih Lansekap Splines untuk membuat jalan di versi tingkat pertama, hanya mengambil "Edit Alat Splines" dan mengklik pada tekstur. Ternyata dua Splines - satu untuk jalan aspal, yang lain untuk jalan tanah. Persimpangan dibuat hanya dengan melapiskan satu sama lain. Untuk "mematerialisasikan" Spline, perlu segmen untuk mengatur Mesh. Saya mengambil yang sudah jadi dari Vehicle Game, di sana lintasannya juga dibuat seperti Landscape Splines (Epic Games Launcher> Unreal Engine> Library> Vault), memotong bagian yang rumit tentang trek dari materi.Ternyata jalan tanah yang bagus! Tidak mungkin mengulangi trik aspal seperti itu, jadi saya mengambil Mesh yang sama, mengubah tekstur Material dari jalan tanah ke aspal (seperti ini ) dan menerapkannya pada Spline dengan skala Z = 0,2, ternyata cukup baik. Pada akhirnya, Anda tidak boleh lupa untuk merusak lanskap di bawah Splines, yang dilakukan hanya dengan satu tombol, dan jalan siap:



Komposisi dunia


YouTube , , , . UE : World Composition Level Streaming. «» ( , UE ). «», Level Streaming Volumes ( ), .


World Composition 4 4 16 1 1 . , — «» . , — Scale . .. Z-Scale , Z-Scale, ( 16).


World Composition , . , , , :

  1. Make current. , , ( Levels), \ . «» Persistent Level. PlayerStart «», UE , .
  2. MyGameInstance.cpp UE World Composition: Persistent Level > Persistent Level > > > . , .. , , . , , =) , . Sayangnya, pengetahuan saya di UE tidak memungkinkan saya untuk mereproduksi perbaikan dari utas ini satu-satu, saya baru saja membuat Kelas C ++ tipe “GameInstance” dan menetapkannya di properti proyek. MyGameInstance.h dan MyGameInstance.cpp masing-masing:

    #pragma once
    
    #include "CoreMinimal.h"
    #include "Engine/GameInstance.h"
    #include "MyGameInstance.generated.h"
    
    UCLASS()
    class SAMPLE_01_API UMyGameInstance : public UGameInstance
    {
    	GENERATED_BODY()
    	
    public:
    	virtual void LoadComplete(const float LoadTime, const FString& MapName) override;
    };
    

    
    #include "MyGameInstance.h"
    #include "Engine/World.h"
    #include "Engine/WorldComposition.h"
    #include "Engine/LevelStreaming.h"
    
    void UMyGameInstance::LoadComplete(const float LoadTime, const FString & MapName)
    {
    	Super::LoadComplete(LoadTime, MapName);
    	
    	UWorld* World = GetWorld();
    	
    	// WorldComposition won't work in Standalone mode without next statement
    	if ( World->WorldComposition ) {
    		const TArray<ULevelStreaming*> TilesStreaming = World->WorldComposition->TilesStreaming;
    		World->ClearStreamingLevels();
    		World->SetStreamingLevels(TilesStreaming);
    	}
    	
    	// "Pause" game till streaming complete
    	GEngine->BlockTillLevelStreamingCompleted(World);
    }
    


Itu saja untuk saat ini. Rencananya menceritakan tentang pembuatan menu mulai dan minimap dalam permainan. Terima kasih


All Articles