unity3d 材质更换_unity3d更换材质 - CSDN
  • Unity3d Change Material by Script Test(1)主要用于修改使用Unity3d内部的材质球 Default-Particle,打包时会冗余多分Default-Particle的Texture2D。打算使用制作的Material替换,再使用依赖打包,实现Texture2D的...

    Unity3d Change Material by Script Test(1)

    主要用于修改使用Unity3d内部的材质球 Default-Particle,打包时会冗余多分Default-Particle的Texture2D。打算使用制作的Material替换,再使用依赖打包,实现Texture2D的提取。

    using System;
    using UnityEditor;
    using UnityEngine;
    
    public class ReplaceComponent
    {
        private static void Repalce()
        {
            UnityEngine.GameObject[] selections = Selection.gameObjects;
    
            UnityEngine.Object obj = AssetDatabase.LoadMainAssetAtPath("Assets/test.mat");
            Material mat = obj as Material;
    
            foreach (var o in selections)
            {
                SetObjRecursively(o,mat);
            }
    
            AssetDatabase.SaveAssets();
        }
    
        static void SetObjRecursively(GameObject rootObj,Material mat)
        {
            if (null != rootObj.renderer)
            {
                Debug.Log(rootObj.renderer.name);
            }
            if (null != rootObj.particleSystem)
            {
                Debug.Log(rootObj.particleSystem.name);
                if (null != rootObj.particleSystem.renderer)
                {
                    if ("Default-Particle (Instance)" == rootObj.particleSystem.renderer.material.name)
                        rootObj.particleSystem.renderer.material = mat;
                }
            }
            System.Collections.Generic.IEnumerable<GameObject> subObj = rootObj.GetDirectChildren();
            System.Collections.Generic.IEnumerator<GameObject> e = subObj.GetEnumerator();
            if (null != rootObj)
            {
                while (e.MoveNext())
                {
                    SetObjRecursively(e.Current,mat);
                }
            }
        }
    
        [MenuItem("EctypeEditor/Replace Component")]
        static void ReplaceComponentSelect()
        {
            Repalce();
        }
    }
    展开全文
  • 动态更改材质球纹理的步骤: 1:找到对应的材质球 2:更改材质球纹理 ----> renderer.material.mainTexture = "目标纹理"; 代码如下: 点击按钮,就能实现对应功能

    动态更改材质球纹理的步骤:

    1:找到对应的材质球

    2:更改材质球纹理 ---->  renderer.material.mainTexture = "目标纹理";



    代码如下:


    点击按钮,就能实现对应功能



    展开全文
  • using UnityEngine; using System.Collections; public class TestScriptReplaceShader : MonoBehaviour { Renderer re; // Use this for initialization void Start () { re = transform.Ge
    using UnityEngine;
    using System.Collections;
    public class TestScriptReplaceShader : MonoBehaviour
    {
        Renderer re;
        // Use this for initialization
        void Start ()
        {
            re = transform.GetComponent<Renderer> ();
            Debug.Log ("材质球shader替换成(FX/Flare)");
            re.material.shader = Shader.Find ("FX/Flare");
        }
    
        // Update is called once per frame
        void Update ()
        {
            if (Input.GetKeyDown(KeyCode.A)) {
                Debug.Log ("材质球shader替换成(Standard)");
                re.material.shader = Shader.Find ("Standard");
            }
        }
    }
    
    展开全文
  • Unity3D从入门到进阶】文章目录及设置这个专栏的初衷 二、Mesh网格与Material材质 Mesh 网格,控制物体外观 Material 材质,控制物体皮肤 举例: 这是一个默认的Cube 我们来更换一下材质Material: 我们来更换...

    一、目录

    【Unity3D从入门到进阶】文章目录及设置这个专栏的初衷

    二、Mesh网格与Material材质

    Mesh 网格,控制物体外观
    Material 材质,控制物体皮肤

    举例:
    在这里插入图片描述
    在这里插入图片描述
    这是一个默认的Cube
    我们来更换一下材质Material:
    在这里插入图片描述
    在这里插入图片描述
    我们来更换一下网格Mesh:

    在这里插入图片描述
    在这里插入图片描述
    通过MeshFilter的Mesh修改物体外观,可以修改为立方体,球体,胶囊体等
    通过MeshRenderer的Material修改物体材质

    GetComponent<MeshFilter>().mesh = mesh;
    GetComponent<MeshRenderer>().material = material;
    
    展开全文
  • unity中本来想实现在一个背景墙上更换图片的功能在网上查了一些资料说是用Image,但我是新手小白刚接触Unity不久好多组建还不会用,就想能不能通过改变游戏对象的材质球来更换游戏对象的背景。查了一些帖子,参看...
  • renderer.material.shader = Shader.Find("Custom/SimpleAlpha");代码控制切换shader。
  • 更换贴图脚本-unity3d

    2014-10-21 14:48:48
    原文地址:更换贴图脚本-unity3d作者:秦龍在天直接将以下代码附加在要换贴图的模型上即可。 var textures : Texture2D[]; //声明一个数组型的图片库; private var i : float = 0; //声明i为浮点数0; function ...
  • 控制材质颜色或者更换材质 (标注部分为主要内容) 主要知识点: 声明一个数组: public Button[] btns; public string colors; 获得Resources目录下某个文件夹下的全部材质 Material[] matArr = ...
  • 材质更换:  通过点击物体选取,并通过按钮给物体赋予不同的贴图 截屏:通过按钮截取屏幕,并实现本地存储,适用于PC机单机作品 下载路径:http://115.com/u/84345888 文件名 更换物体材质及截屏存储(本地...
  • Unity3D 最经典 2 by 3 结构界面,上面呈现了 Unity3D 最为常用的几个面板,下面为各个面板的详细说明。 1.Scene【场景面板】:该面板为 Unity3D 的编辑面板;你可以将你所有的模型、灯光、以及其他材质对象拖放到...
  • 新创建的材质Inspector没法选择贴图单击箭头指示区域,即可下拉选择纹理的区域 转载于:https://blog.51cto.com/568464209/1761407
  • Unity 实现更换材质球时的颜色渐变效果,逐渐改变材质球颜色的效果。
  • 在Mesh Renderer经常会遇到需要输入两三个材质的情况,我们有时候做交互的时候,需要改变其中某个值,我首先试了下用下标名然后用材质赋给它,没有成功,后来找到了这个命令,发现是可行的,所以记录下来。...
  • 在我们开发游戏的时候肯定有哪一个特殊的时候要改变一下材质的shader if (Input.GetKeyDown(KeyCode.A))  {  GetComponent().material.shader = Shader.Find("FX/Flare");  print(GetComponent()....
  • unity通过代码改变材质球颜色 gitee地址:https://gitee.com/asiworld csdn博客地址:https://blog.csdn.net/JianShengShuaiest bilibili地址:https://space.bilibili.com/15766978 大家好我是谢斯,一个unity开发...
  • Unity3D 模型换肤技术

    2015-12-10 15:42:39
    最近在看Unity3D的人物模型和动画。所以今天先说下人物的换装吧。相信大家都玩过网游吧,没有玩过的也相信见过,就是网游或者单机游戏里的人物会有更换服装,更换武器的功能。如果外形(mesh)是一样的,那么把贴图换...
  • 在Assets文件夹下新建一个Resources文件夹,将所需要加载的图片放到该文件夹下。 其中num=4因为当前文件夹下只放了4张图片。 {CSDN:CODE:1867644}
  • 笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,已出版书籍:《手把手教你架构3D游戏引擎》电子工业出版社和《Unity3D实战核心技术详解》电子工业出版社等。CSDN视频网址:...
  • 1,创建一个材质 修改shader为 RenderFX/Skybox 修改其中的6张图 2,在Edit->Render setting里 在inspector面板中 更改skybox material 将自定义的天空盒材质赋给他
  • void Start () { const string MainTexVariableName = "_MainTex"; var renders = gameObject.GetComponentsInChildren<Renderer>(); ... var resMat = Resources.Load<...("CharacterThro...
1 2 3 4 5 ... 20
收藏数 673
精华内容 269
热门标签
关键字:

unity3d 材质更换