Easy Save 2 说明文档简单翻译(四)

Saving and Loading PNG and JPG Images

你可以使用EasySave为Texture2D加载一张JPEG,PNG图片,也可以保存Texture2D为PNG图片。

Loading an Image as a Texture2D

你可以通过使用ES2.LoadImage来为Texture2D加载JPEG或PNG。

例如,从用于的硬盘中加载一张JPG到GameObject的material中,可以使用一下代码:

   1: renderer.material.mainTexture = ES2.LoadImage("C:/Users/User/myImage.jpg");

Saving a Texture2D as a PNG

保存Texture2D为PNG,使用ES2.SaveImage函数

例如,保存GameObject material的texture:

   1: ES2.SaveImage(renderer.material.mainTexture, "C:/Users/User/MyImage.png");

 

 

Loading An Audio File As An AudioClip

EasySave允许加载 MP3,Ogg, WAV,XM,IT,MOD,S3M格式的文件称为Unity的AudioClips,使用ES2.LoadAudio函数。

注意你不能在Mac与PC上加载MP3文件,也不能在移动设备上加载Ogg文件。

   1: audio.clip = ES2.LoadAudio("C:/User/Users/myAudio.ogg");

   2: audio.Play();

 

 

Faster Saving and Loading using ES2Writer and ES2Reader

如果需要保存与加载额外的执行效率,或额外的灵活性,那么我们建议你使用 ES2Writer与ES2Reader.

这个比起多次调用ES2.Save与ES2.Load有更快的速度。

Using ES2Writer and ES2Reader with Tags

和save,load一样,writer与reader同样可以使用tags.

在开始之前,你需要注意你不可以使用reader或writer打开同一个文件多次,否则会有意外的行为发生。

Saving to a File using Tags

要保存数据到文件,你需要通过ES2Writer.Creater创建ES2Writer并调用Write函数来保存数据到文件。当你结束保存文件,你必须调用writer的Save函数来保存数据。

除非你使用的是Using语法,否则你必须调用writer的Dispose函数,当你结束的时候。

   1: using(ES2Writer writer = ES2Writer.Create("myFile.txt"))

   2: {

   3:     // Write our data to the file.

   4:     writer.Write(this.name, "nameTag");

   5:     writer.Write(this.transform, "transformTag");

   6:     writer.Write(newint[]{1,2,3},"intArrayTag");

   7:     // Remember to save when we're done.

   8:     writer.Save();

   9: }

Loading From a File using Tags

使用ES2Reader.Create创建一个ES2Reader,并调用Read函数来从文件中读取数据。

你也可以使用Self-assigning Read函数来直接加载组件。

除非你使用using语法,否则最后要调用Dispose函数。

   1: using(ES2Reader reader = ES2Reader.Create("myFile.txt"))

   2: {

   3:     // Read data from the file in any order.

   4:     reader.Read<Transform>("transformTag", this.transform);

   5:     this.name = reader.Read<string>("nameTag");

   6:     int[] myIntArray = reader.ReadArray<int>("intArrayTag");

   7: }

Using ES2Writer and ES2Reader Sequentially

最快的加载数据方式就是按你保存时的顺序加载,不适用tags.前面的例子中,如果当保存或加载不适用tag就是这里的快速了。

按照你保存时的顺序读取数据,这是非常重要的,否则你会得到一个运行时错误。

同时也要注意当你连续保存时,我们使用 Save(false)来代替Save()用来告诉EasySave不使用Tag。

Saving to a file Sequentially

   1: using(ES2Writer writer = ES2Writer.Create("myFile.txt"))

   2: {

   3:     // Write our data to the file in the order we are going to read it.

   4:     writer.Write(this.name);

   5:     writer.Write(this.transform);

   6:     writer.Write(newint[]{1,2,3});

   7:     // Remember to save when we're done.

   8:     writer.Save(false);

   9: }

Loading from a File Sequentially

用ES2Reader.Create(filepath)创建ES2Reader并调用其Read(data)来加载文件中的数据。

   1: using(ES2Reader reader = ES2Reader.Create("myFile.txt"))

   2: {

   3:     // Read the data from the file in the same order as we saved it.

   4:     this.name = reader.Read<string>();

   5:     reader.Read<Transform>(this.transform);

   6:     int[] myIntArray = reader.ReadArray<int>();

   7: }

发表评论

邮箱地址不会被公开。 必填项已用*标注

* Copy This Password *

* Type Or Paste Password Here *