Legacy Documentation: Version 4.5.0

Script language:

  • JS
  • C#
  • Boo
Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

EditorUtility.SaveFilePanel

static function SaveFilePanel(title: string, directory: string, defaultName: string, extension: string): string;
static string SaveFilePanel(string title, string directory, string defaultName, string extension);
static def SaveFilePanel(title as string, directory as string, defaultName as string, extension as string) as string

Description

Displays the "save file" dialog and returns the selected path name.

See Also: OpenFilePanel function.


Save File Panel.

	// Opens a file selection dialog for a PNG file and saves a selected texture to the file.

import System.IO;

class EditorUtilitySaveFilePanel {

@MenuItem("Examples/Save Texture to file") static function Apply () {

var texture : Texture2D = Selection.activeObject as Texture2D; if (texture == null) { EditorUtility.DisplayDialog( "Select Texture", "You Must Select a Texture first!", "Ok"); return; }

var path = EditorUtility.SaveFilePanel( "Save texture as PNG", "", texture.name + ".png", "png");

if(path.Length != 0) { // Convert the texture to a format compatible with EncodeToPNG if(texture.format != TextureFormat.ARGB32 && texture.format != TextureFormat.RGB24){ var newTexture = Texture2D(texture.width, texture.height); newTexture.SetPixels(texture.GetPixels(0),0); texture = newTexture; } var pngData = texture.EncodeToPNG(); if (pngData != null) File.WriteAllBytes(path, pngData); } } }