Better stats logging in USkeletalMeshComponentBudgeted::TickComponent() with derived class

Hello,

We’d like to add better stats logging to USkeletalMeshComponentBudgeted::TickComponent(). Currently, we have a derived class that does not give us specific actor ID information when profiling in Insights, even when we enable verbose stat names. We’d like to change the access level from private to at least protected so that we can provide a custom scope cycle name. Is this recommended or is there a better way to enable this information during profiling?

We currently have the following engine change to address this. Is this recommended?

protected:

	// UActorComponent interface
	UE_API virtual void BeginPlay() override;
	UE_API virtual void EndPlay(const EEndPlayReason::Type EndPlayReason) override;
	UE_API virtual void TickComponent(float DeltaTime, enum ELevelTick TickType, FActorComponentTickFunction *ThisTickFunction) override;

Steps to Reproduce

Hi, yeah as far as I’m aware the most information that you’ll get with the default scope calls is the type of the mesh, and not the actor itself. So if you wanted to add a custom scope counter that included the actor in the name, I think that should work. There’s no problem in exposing TickComponent as protected on USkeletalMeshComponentBudgeted, we’ve actually done that ourselves recently and you’ll see the change eventually in the 5.8 release.

Let me know if you have any other questions on this.