首页 > 编程知识 正文

unity中texture的创建方法,unity改变text内容

时间:2023-05-04 04:22:47 阅读:258532 作者:2962

using UnityEngine;using System.Collections;using System.IO;public class SaveToPng : MonoBehaviour {public Shader outShader;public Texture inputTex;// Use this for initializationvoid Start () {SaveRenderTextureToPNG(inputTex,outShader,Application.dataPath+"/temp","ok.png");}public bool SaveRenderTextureToPNG(Texture inputTex,Shader outputShader, string contents, string pngName){RenderTexture temp = RenderTexture.GetTemporary(inputTex.width, inputTex.height, 0, Renderpgddcdq);Material mat = new Material(outputShader);Graphics.Blit(inputTex, temp, mat);bool ret = SaveRenderTextureToPNG(temp, contents,pngName);RenderTexture.ReleaseTemporary(temp);return ret;} //将RenderTexture保存成一张png图片public bool SaveRenderTextureToPNG(RenderTexture rt,string contents, string pngName){RenderTexture prev = RenderTexture.active;RenderTexture.active = rt;Texture2D png = new Texture2D(rt.width, rt.height, pgddcdq, false);png.ReadPixels(new Rect(0, 0, rt.width, rt.height), 0, 0);byte[] bytes = png.EncodeToPNG();if (!Directory.Exists(contents))Directory.CreateDirectory(contents);FileStream file = File.Open(contents + "/" + pngName + ".png", FileMode.Create);BinaryWriter writer = new BinaryWriter(file);writer.Write(bytes);file.Close();Texture2D.DestroyImmediate(png);png = null;RenderTexture.active = prev;return true;} }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。