How to expose component properties in Blueprint to Editor

For example, my blueprint has a ‘Point Light’ component, after an instance of this blueprint is dragged to the scene, I’d like to edit properties (color, intensity, etc…) of the ‘Point Light’ component in the Editor’s detail panel, but I’ve found no way to do this.

A workaround is to create several public variable in the blueprint like ‘color’ or ‘intensity’, then set them to the ‘Point Light’ component in ConstructionScript, it works but rather tedious (imaging a ‘Camera’ component which has dozens of properties for post-processing).

In the C++ template project ‘Twin Stick Shooter’, the player’s pawn is exposed as Blueprintable, and it has a ‘Camera’ component attached, somehow all of the 'Camera’s properties is editable in the Editor, which is exactly the behavior I’m wanting, but I think C++ is too overkill for such a simple task.

Is there any simple way to do this in pure blueprint without C++?

Hi, I have the same nuisance in UE 4.8. I’ve made my own blueprint, which I want to add to another blueprint as a component, but now the properties are not editable in the blueprint editor.

One work-around solution for this is to make a child blueprint of the object you want to add. You can edit that child and add it as a component. This is easier than manually connecting every property. One weird thing is that you can now edit every property even those that are not exposed (maybe all the public properties, but not the private ones).

I would really love to see this feature properly implemented in the next revision of UE.