在运行时创建保存和加载材料

我正在尝试在运行时创建一个材质,如下所示:

  1. 在我的资产中,我有一个渲染纹理和一个材质
  2. 我创建了一个将渲染纹理附加到材质的脚本
  3. 我在我的项目中保存一个PNG图像文件供以后使用

    public void CreateAndSaveMaterial(){ RenderTexture.active = _renderTexture; Texture2D tex = new Texture2D(_renderTexture.width, _renderTexture.height, TextureFormat.ARGB32, false); tex.ReadPixels(new Rect(0, 0, _renderTexture.width, _renderTexture.height), 0, 0); tex.Apply(); File.WriteAllBytes(Application.dataPath + url, tex.EncodeToPNG()); tempObject.mainTexture = tex; RenderTexture.active = null; 

    }

*问题:

1.素材工作原则:退出播放后,素材重置:(2)创建的PNG文件只有在Unity中重新导入才能使用,我试过:

 AssetDatabase.CreateAsset(obj, fileName); AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); 

但没有成功,只能在编辑器中工作,而不是在构建应用程序:(

有什么建议么? 提前致谢!