Skip to content

Pattern — Custom File Type

Files are UObject classes. When the player double-clicks in Explorer, the OS launches the file’s Target Program Class. Bundled video and audio files demonstrate the pattern.

flowchart LR
  File["BP_File_MyDoc<br/><i>UOperatingSystemFile</i>"]
  Prog["BP_Prog_MyEditor<br/><i>UOperatingSystemBaseProgram</i>"]
  Explorer["UOperatingSystemExplorer"]
  File -->|"Extension: .mydoc"| Explorer
  File -->|"Target Program Class"| Prog
  Explorer -->|"On Open"| Prog
File classExtensionTarget programPath
BP_File_SampleVideo.mp4BP_Prog_VideoPlayerShared/Blueprints/Files/
BP_File_Audio_01.mp3BP_Prog_AudioPlayerShared/Blueprints/Files/Audio/
BP_File_WelcomeNote.txtNotepadShared/Blueprints/Files/
Get Operating System → Get Directory From Path
→ Construct File (Class: BP_File_MyDoc, Parent Directory: …)