I was trying to create following component hierarchy within my actor:
- UMyActor
- UMyComponent
- UCameraComponent
I decorated both components with UProperty
macro and gave them EditAnywhere
specifier.
While the CameraComponent
shows up on the list in details panel I can’t edit its properties. Though, I can edit them below if I expand CustomComponent
category and navigate to CameraComponent
. Then I can punch in different location but I can’t move the component in the viewport.
I may be missing something here but is there a way to make CameraComponent
fully editable?
Hello kampaw,
I was able to create a nested component as you showed without having any editing problems. Can you post the code to show how you’re going about creating/nesting these components?
Hey, for your convenience and just to be safe I created an empty project, here’s the paste MyActor.cpp · GitHub and here’s the result http://imgur.com/3m0P2Pm Am I doing something wrong?
Thank you for providing that information, I had assumed that you had them all inheriting from one another instead of being children in this way. From what I gather, the actual bug here is that NestedCamera is being shown in the hierarchy as a child of the MyActor1 instance, instead of it not being editable in this manner. As this NestedCamera is a child of the MyActorComponent, it should only be seen/editable from inside of the MyActorComponent’s properties. I have reported this particular bug so that there is no other further confusion. For your reference, the bug number is UE-22337.
Hey, thanks for your answer. I hope I didn’t come off as I was complaining or anything, I was just seeking answers. When I saw that NestedCamera shows up under MyActor I assumed it is accessible the same way as any primitive component created by MyActor, for example it can be moved in the viewport. I understand that’s not the case and only direct children of the actor can be edited this way?