zoukankan      html  css  js  c++  java
  • LittleTools之输出RenderTexture工具

    using UnityEngine;
    using System.Collections;
    using System.IO;
    /// <summary>
    /// Save render texture.
    /// 1.需要在Assets同级目录下新建一个Dump文件夹
    /// 2.一般绑在摄像机下
    /// 3.摄像机中添加RenderTexture,并将其设置为OutputTexture
    /// </summary>
    public class SaveRenderTexture : MonoBehaviour {
            public RenderTexture OutputTexture;
            [ContextMenu("Save png")]  
            private void SaveTextureToFile()  
            {  
                    if (OutputTexture != null)  
                    {                         
                            RenderTexture prev = RenderTexture.active;
                            RenderTexture.active = OutputTexture;
                            Texture2D png = new Texture2D(OutputTexture.width, OutputTexture.height, TextureFormat.ARGB32, false);  
                            png.ReadPixels(new Rect(0, 0, OutputTexture.width, OutputTexture.height), 0, 0);  
                            byte[] bytes =  png.EncodeToPNG();  
                            string path = string.Format("Dump/raw {0}.png", Random.Range(0, 65536).ToString("X"));   
                            FileStream file = File.Open(path, FileMode.Create);
                            BinaryWriter writer = new BinaryWriter(file);  
                            writer.Write(bytes);  
                            file.Close();  
                            png = null;
                            RenderTexture.active = prev;  
                    }
            }  
    }
    

      

  • 相关阅读:
    搜索框的实现
    图片瀑布流实现
    git的基本操作总结
    linux中常用命令总结
    JavaScript中的闭包
    springmvc执行过程
    位运算
    MySQL与Oracle数据库连接配置
    java 基础数据类型大小
    spring源码编译控制台输出乱码
  • 原文地址:https://www.cnblogs.com/chimo523/p/5271703.html
Copyright © 2011-2022 走看看