float APawn::GetDefaultHalfHeight() const { USceneComponent* DefaultRoot = GetClass()->GetDefaultObject<APawn>()->RootComponent; if (DefaultRoot) { float Radius, HalfHeight; DefaultRoot->UpdateBounds(); // Since it's the default object, it wouldn't have been registered to ever do this. DefaultRoot->CalcBoundingCylinder(Radius, HalfHeight); return HalfHeight; } else { // This will probably fail to return anything useful, since default objects won't have registered components, // but at least it will spit out a warning if so. return GetClass()->GetDefaultObject<APawn>()->GetSimpleCollisionHalfHeight(); } }