1 year ago

Finally got the RHI switch working.

Now you can switch between DX11 and DX12 on Windows.

For Linux, Vulkan is the only option.

See article for the code.


You will need to create a new UserWidget C++ class. You will also need a BP user widget as well. In the BP widget, change the parent class to the newly created C++ user widget (whatever name you gave it).

Now you need to write code so open up the C++ widget file. It will open up 2 files; a .cpp file (where you will write function definitions) and a .h file( header, where you will write declarations).

Here's the header file. This is where you will tell the name of the function, it's return type and allow blueprint execution. You can put this under protected.

		
			UFUNCTION(BlueprintCallable, meta = (DisplayName = "Set Current RHI", Keywords = "Graphics API"), Category = Game)
void SetNewRHI(FString SelectedRHI);
		
	
image.png

SelectedRHI is the input that will passed from blueprints.

UFUNCTION is necessary to give certain Unreal arguements like making it exposed to Blueprints.


Here's the function definition in C++. This is where you will tell it what to do when it is called.

		
			
void AConsoleWindow::SetNewRHI(FString SelectedRHI)
{
GConfig->SetString(TEXT("/Script/WindowsTargetPlatform.WindowsTargetSettings"), TEXT("DefaultGraphicsRHI"), *SelectedRHI , GEngineIni);

GConfig->Flush(true, GEngineIni);
}



		
	
image.png

It is basically changing the Engine.ini file to change the default RHI.

Save them both them Compile. You can do this by going to Build then Build Solution in Visual Studio or by pressing the compile button in UE

For UE5, it's down at the bottom right

image.png

For UE4, it's up in the toolbar, right next to the play button

image.png

After successfully compiling, you'll see the function appear in the BP Search Menu

image.png
image.png

Pass through
DefaultGraphicsRHI_DX11 for DirectX11

DefaultGraphicsRHI_DX12 for DirectX12

DefaultGraphicsRHI_Vulkan for Vulkan


Or if you think this is a lot of work then you can use this premade one from Cesio



0 comments

Loading...

Next up

Quokka - Aussie Cats

ITS GODOT TIME

This is what I made in a day

Unity & Unreal version here

https://gamejolt.com/p/recently-started-learning-unity-this-is-w…

Doki Doki Literature Club is celebrating Monika's birthday and the 8th anniversary of DDLC with exclusive stickers, avatar frames and backgrounds on Game Jolt! 

Head over to the shop to collect yours 👉 https://gamejolt.com/#shop

#gjbroadcast

Gang's all here

Added owl (◕▾◕v)

Dive into the cozy post-apocalyptic open world of Critter Cove!

Gentleman Rat Studios (@GR-Rob ) describe it as “a little bit Animal Crossing, a little bit Stardew Valley. Maybe even a little bit Windwaker, too."

Wishlist the game: https://bit.ly/CritterCove

Canada Lynx

Censorship is wild rn in my country.

Can't even get on gj properly, and itch.io is just straight up blocked

Anyway, here's Clippy

IYKYK

Mae Borowski is the main character of Night in the Woods! It's an adventure game that tells the story of her return to her hometown of Possum Springs. She was confirmed as canonically pan in a social media post by the game's creator Scott Benson.

Amur Leopard - big cat