zoukankan      html  css  js  c++  java
  • 设置texture

    //获取内部资源贴图
        public void setInsideTexture()
        {
            Texture2D texture = Resources.Load(texture_url) as Texture2D;
            Renderer renderer = GetComponent<Renderer>();
            renderer.material.mainTexture = texture;
        }
    
        //获取外部资源贴图(本地路径)
        public void setExternalTextureByIO()
        {
            //创建文件读取流
            FileStream fileStream = new FileStream(texture_url, FileMode.Open,
                FileAccess.Read);
            fileStream.Seek(0, SeekOrigin.Begin);
            //创建文件长度缓冲区
            byte[] bytes = new byte[fileStream.Length];
            //读取文件
            fileStream.Read(bytes, 0, (int) fileStream.Length);
            //释放文件读取流
            fileStream.Close();
            fileStream.Dispose();
            fileStream = null;
    
            //创建Texture
            int width = 800;
            int height = 640;
            Texture2D texture = new Texture2D(width, height);
            texture.LoadImage(bytes);
            Renderer renderer = GetComponent<Renderer>();
            renderer.material.mainTexture = texture;
    
        }
    
        /// <summary>
        /// 以WWW方式进行加载
        /// </summary>
        private void setExternalTextureByWWW()
        {
            StartCoroutine(LoadWWW());
        }
    IEnumerator LoadWWW() {
    //请求WWW WWW www = new WWW(texture_url); yield return www; Renderer renderer = GetComponent<Renderer>(); renderer.material.mainTexture = www.texture; Debug.Log(www.ToString()); Stream outStream = File.Create(ExportClass.prePath + "test.png"); byte[] buffer = www.bytes; outStream.Write(buffer, 0, buffer.Length); outStream.Close(); }
    /// <summary>
    /// 根据json image中的base64数据还原贴图.
    /// </summary>
    /// <param name="imageStr"></param>
    private void setTextureByJsonData(string imageStr)
    {
    Debug.Log("开始 设置 材质球 来自json的贴图...");
    var base64Data = Regex.Match(imageStr, @"data:image/(?<type>.+?),(?<data>.+)").Groups["data"].Value;
    byte[] bytes = Convert.FromBase64String(base64Data);
    Texture2D tex = new Texture2D(100,100);
    tex.LoadImage(bytes);
    Renderer renderer = game.GetComponent<Renderer>();
    renderer.material.SetTexture("_MainTex",tex);
    }
     
  • 相关阅读:
    html
    头部标签
    ajax
    分辨率
    js 运动基础
    js DOM
    js定时器
    js数组
    js基础
    例子:js简易日历
  • 原文地址:https://www.cnblogs.com/leeplogs/p/6713759.html
Copyright © 2011-2022 走看看