Download

Missing component properties in blueprints

Hi! I have a blueprint which has a hierarchy of components : the DefaultSceneRoot, with a child named SplineParent of type SceneComponent, and SplineParent has children Spline1 and Spline2 of type SplineComponent.
In C++, USplineComponent inherits from UPrimitiveComponent, and UPrimitiveComponent has this property


    UPROPERTY(EditAnywhere, AdvancedDisplay, BlueprintReadOnly, Category = Rendering)
    uint8 bRenderInMainPass:1;

However, if I select Spline1 in the Components panel of the blueprint editor, in the Details panel there is no Rendering category, and no RenderInMainPass properties. I expanded the advanced properties.
How come?

These are hidden by the UCLASS specifier. In particular, this line in USplineComponent


UCLASS(ClassGroup=Utility, ShowCategories = (Mobility), HideCategories = (Physics, Collision, Lighting, Rendering, Mobile), meta=(BlueprintSpawnableComponent))


Normally these are hidden cause they should not be changed/need to be changed. not sure why are wanting to change RenderInMainPass.

Thank you very much! I am profiling on a mobile platform, and it appears that culling is very slow (on PC it’s ok). As 50% of the primitives of the scene are actually owned by a spline component I was trying to remove them to see if it makes things faster