设置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();

    }
时间: 2024-08-04 19:51:31

设置texture的相关文章

Unity3d 导入图片 自动修改Texture Type为Sprite (2D and UI) 及设置 Packing Tag为文件夹名

Unity3d 的新版 UI 系统在给我们带来很大便利的同时,也添加了一些小麻烦.每次从电脑中导入图片到 Unity3d 中都需要手动设置Texture Type为Sprite (2D and UI) 及设置 Packing Tag.对于需要打包为一个图集的图片,我们一般把它们放到一个文件夹中. 基于以上,我们可以让图片的 Packing Tag 自动设置为 文件夹的名字. 转自http://blog.csdn.net/huutu http://www.thisisgame.com.cn Uni

CSharpGL(29)初步封装Texture和Framebuffer

+BIT祝威+悄悄在此留下版了个权的信息说: CSharpGL(29)初步封装Texture和Framebuffer +BIT祝威+悄悄在此留下版了个权的信息说: Texture和Framebuffer Texture和Framebuffer是OpenGL进行3D渲染高级效果必不可少的利器.有了Texture和Framebuffer就可以实现体渲染(Volume Rendering)等效果.现在到了对Texture和Framebuffer的创建.修改.使用进行封装的时候. +BIT祝威+悄悄在此

NVIDIA显卡设置

在玩3D游戏时,因为我的显卡不是特别给力,所以针对性能做些牺牲质量换取性能的调整. 简单方法 简单的方法是,3D设置-通过预览调整图像设置,根据偏重点来设置平衡:性能或者质量. 高级设置 如果你想自行设置每一处细节,可以适当地修改以下设置 1.各向异性过滤:关,2x,4x,8x,16x,数字越大,消耗越高,可根据显卡强劲来设置 2.垂直同步:关了性能会提升,但画面也许会撕裂,也和显示器的刷新频率有关,我的显示器是60HZ,我选择关闭 3.最大预渲染帧数:根据情况调节,如果卡,将帧数调低 4.电源

Unity换装的实现

关于Unity的换装,网上有几篇文章,我之前也简单的描述过实现.不过那个时候只是粗略的试验了下.今天好好梳理了下代码. 先上代码(自己的游戏项目,不是公司的,所以放心的贴上项目代码了,部分引用到其他的功能文件,但是核心代码无影响,这里主要看一下细节和思路) using UnityEngine; using System.Collections; using System.Collections.Generic; public enum AvatarPart { helmet, chest, sh

ZXing二维码生成在Unity3D中出错,数组超出界限的解决办法

错误截图: IndexOutOfRangeException: Array index is out of range.ZXing.Color32Renderer.Render (ZXing.Common.BitMatrix matrix, BarcodeFormat format, System.String content, ZXing.Common.EncodingOptions options)ZXing.BarcodeWriterGeneric`1[TOutput].Write (Sy

Unity工程里图片的RGB和Alpha通道的分离,以及显示所有带有Alpha通道贴图的Material

背景:ETC1图片格式的罪孽,不支持Alpha通道.于是程序员们将一些气力浪费在Alpha通道的处理上. 为了能使用ETC1,同时某些透明效果必须有Alpha通道,一般的处理方式是将RGB和Alpha分为两张图片分别储存. 只存Alpha通道的图片及RGB都为要存的Alpha值,因为熵比较小,图片尺寸也可以相应减小一些. 要做的工作: 1. 将带有Alpha通道的图片,另存为两张图片,一张只存RGB信息,另一张只存Alpha信息.建议保持为图片原目录,名称加后缀"_RGB", &quo

05 Rawimage原始图片

学习笔记适合新手,如有错误请指正.?号处也请各位指点下,谢谢. Image元素是显示精灵而RawImage是显示普通Texture2D 因为每一张RawImage都会增加额外的Drawcall,所有最好只用于一直使用的大尺寸图片(如与屏幕同等大小的图片)或临时显示的图片 点击导航菜单栏>”GameObject“>”UI“>”RawImage“导航栏,接着设置”Texture“参数为”image“

Unity 游戏开发技巧集锦之材质的应用的创建反射材质

Unity 游戏开发技巧集锦之材质的应用的创建反射材质 Unity中材质的应用 游戏中,大多数材质的应用都离不开纹理,而纹理本身是图片.所以,在学习本章时,最好在电脑上安装一个可以编辑图片的功能强大的软件,如Photoshop和GIMP.本章使用的是前者.另外,有些纹理需要包含Transparents通道,所以图片最好保存成可以存储相应信息的格式,例如,PSD和TGA. unity中创建反射材质 生活中,反射材质(reflective material)的实例有很多.例如,水面.光滑的金属.镜子

iOS - Scenekit3D引擎初探之 - 导入模型+上传服务器+下载并简单设置

SceneKit是ios8之后苹果推出了一个3D模型渲染框架. SceneKit现在可以支持有限的几种模型,截止到我写这篇文章为止似乎只有.dae和.abc后一种模型我没有使用过.这篇文章只针对.dae模型写. 首先如果是希望加载一个已有的,不需要程序在运行的时候动态添加的dae模型.那么我们可以直接新建一个game类型的工程.在选项中选择SceneKit,在程序中加载自带模型的那句话中将模型名称替换即可.本文主要讲一下如何导出dae模型,并在server端动态下载并显示. 首先我们手中有一个.