Hi, I’m using PCG with GPU nodes in UE5.6. Once I name it with Chinese characters or put under a Chinese directory, it will break down.
It seems unusual that path name matters. I’ve written HLSL code in materials and Niagara and they don’t have such problem.
This problem still exists in UE 5.7 ![]()
Even worse, some nodes have been localized to Chinese, and they are broken by default. I must rename those nodes every time.
Good afternoon. UE 5.7.3. There is another similar problem. The very name of the HLSL user node is localized. As a result, we get an error with the name of the computational shader core:
Warning: Shader minification failed.
[PCGVolume] Error: [231,6] expected unqualified-id void ???_HLSL_PCGCustomHLSLKernel(uint3 GroupId : SV_GroupID, uint GroupIndex : SV_Groupindex) [PCGVolume] Error: /Engine/Transient/PCGB_GPU_Spawner/???_HLSL_PCGCustomHLSLKernel: Shader compilation failed.
Hello,
I have investigated how Niagara compiles non-English variables, and it turns out that there’s a special function to handle their names
/** Replaces all non-ascii characters with a "ASCXXX" string, where XXX is their int value */
static NIAGARAEDITOR_API FString ConvertToAsciiString(FString Name);
Unfortunately, PCG doesn’t support such thing. We must explicitly use English names.
The good news is, I have found a method to overwrite the localized text, so that the Custom HLSL node can recover its English name by default:
- Create an editor utility object
-
Check “Run on Start up” in the class defaults
-
Override the “Run” function as follows
That’s it. This program will automatically run when you open the project, and hopefully you can place new Custom HLSL nodes with overwritten names. It saves some renaming efforts.
You’re absolutely right! This solved the problem with node localization. Thank you very much! ![]()



