Screen.sleepTimeout = SleepTimeout.NeverSleep;//让屏幕处于从不休眠状态
Screen.sleepTimeout = SleepTimeout.SystemSetting;//让屏幕处于系统设置休眠状态保存资源进入本地
//保存资源到路径
void SaveAssets(string path, string name, byte[] bytes)
{
Stream sw;
FileInfo file = new FileInfo(path + “//” + name);
if (!file.Exists)
{
try
{
sw = file.Create();
sw.Write(bytes, 0, bytes.Length);
sw.Close();
sw.Dispose();
}
catch
{ debug.Log("创建文件加失败");}
}
}
IEnumerator LoadFromWeb(string p)
{
UnityWebRequest request = UnityWebRequest.Get§;
yield return request.SendWebRequest();
if (request.isHttpError || request.isNetworkError)
{
Debug.Log(request.error);
}
else
{
//Debug.Log(request.downloadHandler.data.Length);
AssetBundle ab = AssetBundle.LoadFromMemory(request.downloadHandler.data);
object[] ss = ab.LoadAllAssets();
for (int i = 0; i < ss.Length; i++)
{
//VideoClip vc = ss[i] as VideoClip;
//byte[] bs = ConvetToObj(ss[i]);
//SaveAssets(Application.persistentDataPath, ss[i].ToString(), );
}
ab.Unload(false);
}
}
获取前置、广角摄像头
int GetScore(in WebCamDevice device)
{
int score = 0;
if (device.isFrontFacing == true) score++;
if (device.kind == WebCamKind.WideAngle) score++;
return score;
}
var prefers = devices.OrderByDescending(d => GetScore(d));
sceneDirector.GetComponent().ChangeWebCamDevice(prefers.First());
Yield return new WaitUntil(() => Application.HasUserAuthorization(UserAuthorization.WebCam) && WebCamTexture.devices.Length > 0);