- Home /
Load Assets - WWW vs File
Hello,
I'm working on a Save and Load system for Textures and AudioClips. Everything works perfectly. For my Texture Loader, I'm using:
File.ReadAllBytes()
Where as for my AudioClip Loader, I'm using:
www.GetAudioClip(false);
I'm just wondering if I can stick to only one method for both (either WWW or File), and which one should I use? What's the benefits of using one over another?
Thanks.
Update --
I forgot to mention that this is for iOS.
Answer by Landern · Jun 12, 2015 at 02:15 PM
They aren't doing the same thing.
File.ReadAllBytes() returns the file as a byte array (byte[]) and then you can do whatever you want with it, put it into any kind of stream, etc. This is also a .NET method.
www.GetAudioClip on the other hand is actually returning type of AudioClip instantiated and all that sweetness. This is a Unity conveyance method.
Another method would be to use the Resource.Load method from the Unity Engine which can load both types.
Hey thanks. The File.ReadAllBytes was only part of it:
var imgRaw = File.ReadAllBytes(path + "/" + filename);
var img = new Texture2D(size.x, size.y);
img.LoadImage(imgRaw);
So now it's loaded my texture via a '.NET' method.
I'm now using this ins$$anonymous$$d now:
var www = new WWW(filepath);
var img = www.texture;
And I can't use Recourses.Load because not all files loaded are within the Resource directory. Thanks.
Your answer
Follow this Question
Related Questions
Can you load an AudioClip from the file system w/o using WWW? 0 Answers
How to get this .mp3 conversion script to play through an audio source? 0 Answers
Double memory for textures downloaded with www..... 2 Answers
WWW Audio and PlayOneShot: Playing the same AudioClip Twice Cuts off First Instance 1 Answer
"Streaming of ' on this platform is not supported" even when not streaming 0 Answers