public override RdUsageGroup CreateModel(IOccurrence occurrence, IOccurrenceBrowserDescriptor descriptor) { using (CompilationContextCookie.GetExplicitUniversalContextIfNotSet()) { if (occurrence is UnityAssetOccurrence assetOccurrence && !assetOccurrence.SourceFile.GetLocation().IsAsset()) { using (ReadLockCookie.Create()) { var solution = occurrence.GetSolution(); var processor = solution.GetComponent <AssetHierarchyProcessor>(); var consumer = new UnityScenePathGameObjectConsumer(); processor.ProcessSceneHierarchyFromComponentToRoot(assetOccurrence.OwningElementLocation, consumer, true, true); string name = "..."; if (consumer.NameParts.Count > 0) { name = string.Join("\\", consumer.NameParts); } return(CreateModel(name)); } } } return(EmptyModel()); }