HoudiniEngineForUnreal icon indicating copy to clipboard operation
HoudiniEngineForUnreal copied to clipboard

HoudiniEngine for UE5.1 (Main branch of UE source)

Open sumo-ldewet opened this issue 3 years ago • 25 comments

Hi,

I tried to use the Houdini Engine plugin for UE 5.1 but I'm getting a lot of compiler errors. Is there anyone that can help me with this?

sumo-ldewet avatar Jul 28 '22 08:07 sumo-ldewet

I've managed to compile it. The main issue is that UE 5.1 deprecated many old APIs that are still used by Houdini Engine, specifically related to UMaterial. There are two major modifications I made:

  1. Instead of accessing Expression directly, use GetExpressionCollection() for adding/Removing expressions.
  2. Similarly, use GetEditorOnlyData() to access data like BaseColor, Roughness etc.

Hope this helps!

dustars avatar Aug 01 '22 03:08 dustars

Thanks, I managed to fix it up as well, but cooking is hanging. Might not be related to HDA files though, investigating.

sumo-ldewet avatar Aug 02 '22 10:08 sumo-ldewet

I've managed to compile it. The main issue is that UE 5.1 deprecated many old APIs that are still used by Houdini Engine, specifically related to UMaterial. There are two major modifications I made:

1. Instead of accessing Expression directly, use GetExpressionCollection() for adding/Removing expressions.

2. Similarly, use GetEditorOnlyData() to access data like BaseColor, Roughness etc.

Hope this helps!

would you be willing to tell me how to do this? do you have a compiled version for Houdini 19.5?

ChrisFriendly avatar Aug 04 '22 18:08 ChrisFriendly

I've managed to compile it. The main issue is that UE 5.1 deprecated many old APIs that are still used by Houdini Engine, specifically related to UMaterial. There are two major modifications I made:

1. Instead of accessing Expression directly, use GetExpressionCollection() for adding/Removing expressions.

2. Similarly, use GetEditorOnlyData() to access data like BaseColor, Roughness etc.

Hope this helps!

would you be willing to tell me how to do this? do you have a compiled version for Houdini 19.5?

Hi Christoph,

Like I mentioned, there are two major modifications: First, use GetExpressionCollection() to access Expressions in UMaterial, for example, you need to change code like Material->Expressions.Add(Exp); to Material->GetExpressionCollection().AddExpression(Exp)

Another one is for data members like BaseColor, Roughness, similary, change Material->BaseColor.Expression to Material->GetEditorOnlyData().BaseColor.Expression

If I remember correctly, applying these two changes can fix most errors (around 200?). But there are still several tricky ones left. Leave them here If you need more help to fix them.

dustars avatar Aug 05 '22 11:08 dustars

Hi.

I've taken the time to go through and port Houdini for use with the ue5-main branch of the engine on GitHub (5.1)

If you or anyone else reading this wants to try out a pre-modified version of this plugin before attempting to fix it themselves for their own projects, check out my repository: https://github.com/CakeQ/HoudiniEngineForUnreal

CakeQ avatar Aug 06 '22 10:08 CakeQ

I still don't get it to compile without errors..

Severity	Code	Description	Project	File	Line	Suppression State
Error	C3861	'GetFontStyle': identifier not found	PluginBuildProject	F:\Unreal_Evaluate\PluginBuildProject\Plugins\Runtime\HoudiniEngine\Source\HoudiniEngineEditor\Private\HoudiniInputDetails.cpp	829	
Error	C2653	'FEditorStyle': is not a class or namespace name	PluginBuildProject	F:\Unreal_Evaluate\PluginBuildProject\Plugins\Runtime\HoudiniEngine\Source\HoudiniEngineEditor\Private\HoudiniInputDetails.cpp	829
Error	MSB3073	The command "D:\UE5_GitHub_Builds\UnrealEngine-ue5-main\Engine\Build\BatchFiles\Build.bat -Target="PluginBuildProjectEditor Win64 Development -Project=\"F:\Unreal_Evaluate\PluginBuildProject\PluginBuildProject.uproject\"" -Target="ShaderCompileWorker Win64 Development -Quiet" -WaitMutex -FromMsBuild" exited with code 6.	PluginBuildProject	C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.MakeFile.Targets	45

ChrisFriendly avatar Aug 08 '22 08:08 ChrisFriendly

I still don't get it to compile without errors..

Severity	Code	Description	Project	File	Line	Suppression State
Error	C3861	'GetFontStyle': identifier not found	PluginBuildProject	F:\Unreal_Evaluate\PluginBuildProject\Plugins\Runtime\HoudiniEngine\Source\HoudiniEngineEditor\Private\HoudiniInputDetails.cpp	829	
Error	C2653	'FEditorStyle': is not a class or namespace name	PluginBuildProject	F:\Unreal_Evaluate\PluginBuildProject\Plugins\Runtime\HoudiniEngine\Source\HoudiniEngineEditor\Private\HoudiniInputDetails.cpp	829
Error	MSB3073	The command "D:\UE5_GitHub_Builds\UnrealEngine-ue5-main\Engine\Build\BatchFiles\Build.bat -Target="PluginBuildProjectEditor Win64 Development -Project=\"F:\Unreal_Evaluate\PluginBuildProject\PluginBuildProject.uproject\"" -Target="ShaderCompileWorker Win64 Development -Quiet" -WaitMutex -FromMsBuild" exited with code 6.	PluginBuildProject	C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.MakeFile.Targets	45

Oh I forgot about this one.

FEditorStyle is replaced by class FAppStyle, codes like FEditorStyle::GetFontStyle(...) should be changed to FAppStyle::GetFontStyle(...). That should fix it!

Check this commit for more info: https://github.com/EpicGames/UnrealEngine/commit/6248f8d412ba73bd0a800e7f51fa07a12d3a78ee

dustars avatar Aug 09 '22 15:08 dustars

how would I change all those files or incorporate that commit into the other one?

I am not a programmer.

ChrisFriendly avatar Aug 11 '22 15:08 ChrisFriendly

how would I change all those files or incorporate that commit into the other one?

I am not a programmer.

If you are not a programmer then it's probably better to stay at UE5.0 instead of UE5.1, since what we've discussed here were quite technical and I would assume this work of porting Houdini engine require at least an experienced C++ engineer.

dustars avatar Aug 11 '22 20:08 dustars

how would I change all those files or incorporate that commit into the other one?

I am not a programmer.

Hi. All you need to do is go to my repository at https://github.com/CakeQ/HoudiniEngineForUnreal and "Download zip". You can delete and replace the plugin you added to your project with this download. The plugin should go into \MyGameProject\Plugins\HoudiniEngine. Check the readme if you're still confused.

image

CakeQ avatar Aug 12 '22 08:08 CakeQ

how would I change all those files or incorporate that commit into the other one? I am not a programmer.

Hi. All you need to do is go to my repository at https://github.com/CakeQ/HoudiniEngineForUnreal and "Download zip". You can delete and replace the plugin you added to your project with this download. The plugin should go into \MyGameProject\Plugins\HoudiniEngine. Check the readme if you're still confused.

image

you may have misunderstood me

I already did that and tried to compile it. That is when I got the errors about 'FEditorStyle::GetFontStyle(...)' and when @dustars mentioned that I would also need to replace those with 'FAppStyle::GetFontStyle(...)' as seen here https://github.com/EpicGames/UnrealEngine/commit/6248f8d412ba73bd0a800e7f51fa07a12d3a78ee

ChrisFriendly avatar Aug 12 '22 08:08 ChrisFriendly

how would I change all those files or incorporate that commit into the other one? I am not a programmer.

Hi. All you need to do is go to my repository at https://github.com/CakeQ/HoudiniEngineForUnreal and "Download zip". You can delete and replace the plugin you added to your project with this download. The plugin should go into \MyGameProject\Plugins\HoudiniEngine. Check the readme if you're still confused. image

you may have misunderstood me

I already did that and tried to compile it. That is when I got the errors about 'FEditorStyle::GetFontStyle(...)' and when @dustars mentioned that I would also need to replace those with 'FAppStyle::GetFontStyle(...)' as seen here https://github.com/EpicGames/UnrealEngine/commit/6248f8d412ba73bd0a800e7f51fa07a12d3a78ee

I'd already handled that compilation issue, so I have a feeling you may be using the wrong branch. The branch I modified (which should be the default one) is titled "Houdani" and should have all the fixes needed to get things up and running

CakeQ avatar Aug 12 '22 08:08 CakeQ

If that still doesn't work for you then I'll have another look on my end to see if I missed anything.

CakeQ avatar Aug 12 '22 08:08 CakeQ

I just tried again and still got the same errors.

\Plugins\HoudiniEngine\HostProject\Plugins\HoudiniEngine\Source\HoudiniEngineEditor\Private\HoudiniInputDetails.cpp(829): error C2653: 'FEditorStyle': is not a class or namespace name \Plugins\HoudiniEngine\HostProject\Plugins\HoudiniEngine\Source\HoudiniEngineEditor\Private\HoudiniInputDetails.cpp(829): error C3861: 'GetFontStyle': identifier not found

ChrisFriendly avatar Aug 12 '22 10:08 ChrisFriendly

@CakeQ have you had time to look at it?

ChrisFriendly avatar Aug 16 '22 10:08 ChrisFriendly

i edited the source code to update FEditorStyle but now I have this error:

Note: Android toolchain NDK r21e recommended Platform Android is not a valid platform to build. Check that the SDK is installed properly. Took 1,0732211s to run dotnet.exe, ExitCode=6

I checked and I have NDK 21 installed. Why does Houdini Engine need Android Dev Stuff at all?

ChrisFriendly avatar Aug 18 '22 09:08 ChrisFriendly

i edited the source code to update FEditorStyle but now I have this error:

Note: Android toolchain NDK r21e recommended Platform Android is not a valid platform to build. Check that the SDK is installed properly. Took 1,0732211s to run dotnet.exe, ExitCode=6

I checked and I have NDK 21 installed. Why does Houdini Engine need Android Dev Stuff at all?

Never mind the Android thing.. i fixed it by installing Android Studio and all the necessary parts.

now there are a ton of new errors...

ChrisFriendly avatar Aug 18 '22 13:08 ChrisFriendly

Are there any news regarding the plugin? I tried the plugin myself but got a lot of error messages

BMWben avatar Sep 16 '22 13:09 BMWben

Are you downloading precompiled version of the plugin (the binaries) or the code version and compiling it yourself?

El El jue, 28 jul 2022 a las 10:45, sumo-ldewet @.***> escribió:

Hi,

I tried to use the Houdini Engine plugin for UE 5.1 but I'm getting a lot of compiler errors. Is there anyone that can help me with this?

— Reply to this email directly, view it on GitHub https://github.com/sideeffects/HoudiniEngineForUnreal/issues/193, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADRZLTSW5P6EYRPYXRVXIN3VWJCD5ANCNFSM544NQMLA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

--

Carlos Acevedo Game Programmer and Developer

Khaliszt avatar Oct 11 '22 08:10 Khaliszt

@CakeQ - thank you for sharing your fixed 5.1 branch! It was working for me but then I updated to 5.1 preview 2 (like an idiot) and it broke. Are you planning an update by chance or should I look at other options? Thanks again

PeterBowles avatar Oct 20 '22 16:10 PeterBowles

FYI, the current code in the 5.0 branches is forward-compatible with the 5.1 preview builds.

dpernuit avatar Oct 20 '22 18:10 dpernuit

Oh awesome, thanks I'll give it a try.

PeterBowles avatar Oct 20 '22 19:10 PeterBowles

I thought that houdini engine was working with latest build but it wasn't actually fully working. I see in the notes that I need to compile the plugin from the source code. Does this mean to compile the whole project from source or just the plugin? Can someone please explain how to achieve this? I'm a beginner programmer, I have visual basic installed but I haven't compiled from source before. And now I'm locked out of my film. Please help!

PeterBowles avatar Oct 22 '22 00:10 PeterBowles

Same, this plugin worked for me with 5.1 until I updated to preview 2 and now it just gives a compile error. Not sure how to compile from source (read through the a couple walkthroughs on it but sounds confusing af) can someone post a version for 5.1 preview 2? Thx

FlurishArt avatar Oct 23 '22 16:10 FlurishArt

why there is no compiled version for 5.1 with today release? please add

shamotina avatar Nov 17 '22 00:11 shamotina