GiM-GamesInMotion / gFurPro

Shell based fur plugin for Unreal Engine 5
https://gim.studio/animalia/animalia/
Other
89 stars 33 forks source link

ue5.4 compatible fix #19

Closed quicklyslow closed 5 months ago

quicklyslow commented 5 months ago

I had made a workable fix for UE5.4. What I'm not sure is *_RenderThread functions should keep in RenderThread or not, in UE5.4, they are not sync on RenderThread, although the "bSupportsParallelGDME = false" added in FFurSceneProxy 's ctor can make GetSections_RenderThread in GetDynamicMeshElements running on RenderThread, but the other functions can not do the same change as this function.

GiM-GamesInMotion commented 5 months ago

Fantastic. Thank you. No idea about the Render thread :/

GiM-GamesInMotion commented 5 months ago

There seems to be an issue compiling the plugin, I'm getting: \GFur\Source\GFur\Private\FurSkinData.cpp(622): error C2011: 'FBoneMatricesUniformShaderParameters': 'class' type redefinition \GFur\Source\GFur\Private\FurSkinData.cpp(622): note: see declaration of 'FBoneMatricesUniformShaderParameters' \GFur\Source\GFur\Private\FurSkinData.cpp(630): error C2027: use of undefined type 'FBoneMatricesUniformShaderParameters' \GFur\Source\GFur\Private\FurSkinData.cpp(622): note: see declaration of 'FBoneMatricesUniformShaderParameters' \GFur\Source\GFur\Private\FurSkinData.cpp(630): error C3861: 'GetStructMetadata': identifier not found \GFur\Source\GFur\Private\FurSkinData.cpp(630): error C2065: 'FileName': undeclared identifier \GFur\Source\GFur\Private\FurSkinData.cpp(630): error C2065: 'FileLine': undeclared identifier \GFur\Source\GFur\Private\FurSkinData.cpp(630): error C3861: 'zzGetMembers': identifier not found \GFur\Source\GFur\Private\FurSkinData.cpp(633): error C2027: use of undefined type 'FBoneMatricesUniformShaderParameters' \GFur\Source\GFur\Private\FurSkinData.cpp(622): note: see declaration of 'FBoneMatricesUniformShaderParameters'

At least the first seems to be related to your fix?

quicklyslow commented 5 months ago

Yes I added the declaration of FBoneMatricesUniformShaderParameters because without it can not compile in UE5.4; Which Engine version do you use?

GiM-GamesInMotion commented 5 months ago

The current 5.4.1 from the launcher.

quicklyslow commented 5 months ago

Sorry the commit(fix from gloriousayu) is already fix the definition problem of FBoneMatricesUniformShaderParameters, I had not realized it and add a declaration of FBoneMatricesUniformShaderParameters in the header, I'll make a pr again

quicklyslow commented 5 months ago

I had made the pr #20 to fix this error and other two

GiM-GamesInMotion commented 5 months ago

Thank you