How to set Actor Hidden In Game or Hidden in Game by HEngine

   4872   2   0
User Avatar
Member
3 posts
Joined: July 2009
Offline
primitive attribute :
i@unreal_uproperty_ActorHiddenInGame = 1
i@unreal_uproperty_HiddenInGame = 1

not work.
User Avatar
Member
6 posts
Joined: Sept. 2018
Offline
You can do it like this: https://i.imgur.com/8Xtm45E.png [i.imgur.com]
User Avatar
Member
5 posts
Joined: Nov. 2019
Offline
I'm not sure if dtlendvaj's method has worked for you, but I just wanted to give a detailed explanation if somebody encounters a problem with "unreal_uproperty_" attributes and how to solve them:

Unreal Engine C++ runtime reflection system for setting UProperty types through FObjectEditorUtils::SetPropertyValueis a bit weird, and I believe this is what Houdini internally uses. Currently Unreal Engine is only able to set the first UProperty member name that it encounters in the Blueprint (or C++) class through the mentioned method. Moreover, you need to ensure "XXXX" of "unreal_uproperty_XXXX" is identical to how it is named in the C++ class, it doesn't consider customized Blueprint naming.

For example, if you got a Blueprint (or C++ Class), TestClass, in Unreal Engine with following member variables:

struct TestStruct{
    int _memberOne = 0;
}

class TestClass{
    int _memberOne = 0;
    TestStruct _testStruct;
}

Then "unreal_uproperty_memberOne" attribute will only set the first _memberOne it encounters. If you write "unreal_uproperty_Member One", it will not match and set this attribute, it has to be written as "unreal_uproperty__memberOne" even if Blueprint would show it as "Member One".

Also, some of these UProperty variables are hidden inside member structures, currently Unreal Engine can't set these properties through the FObjectEditorUtils::SetPropertyValuecalls. For example, _memberOne of _testStruct won't be setable through "unreal_uproperty_".

One solution is to create _houdiniMemberOne variable for use by Houdini only. Set it through "unreal_uproperty__houdiniMemberOne" and then let C++ or Blueprint code set _testStruct._memberOne variable.

It is very convoluted but I doubt Houdini will be able to solve this issue, ideally Unreal Engine should revise their method of FObjectEditorUtils:etPropertyValue.
Edited by volkan-ozdemir - Jan. 11, 2021 17:21:32
  • Quick Links