Unity 實現(xiàn)給物體替換材質(zhì)球
更新時間:2021年04月12日 14:26:55 作者:unity_http
這篇文章主要介紹了Unity 實現(xiàn)給物體替換材質(zhì)球的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
下面先看一下效果圖
using UnityEngine; using System.Collections; public class textMesh : MonoBehaviour { public Material meshRender = null; public Renderer rend; public Texture texture; void Start () { //把名字為bangongshi4 的材質(zhì)球放到Resources文件夾下 meshRender = Resources.Load("bangongshi4") as Material; if (meshRender == null) { Debug.Log("11111111111"); return; } rend = GetComponent<Renderer>(); //rend.enabled = true; rend.sharedMaterial = meshRender;//代表這個對象的共享材質(zhì)資源(這個是替換材質(zhì)球) //MeshRenderer繼承自Renderer所以上面定義成MeshRenderer也可以, //GetComponent<MeshRenderer>().materials[0] = meshRender;//這個表示找到對應(yīng)的材質(zhì)但是不能替換材質(zhì)球, //GetComponent<MeshRenderer>().material.mainTexture = texture;//和上面的一樣,可以替換材質(zhì)的texture Debug.Log(GetComponent<Renderer>().material); Debug.Log(GetComponent<MeshRenderer>().material.mainTexture); } // Update is called once per frame void Update () { } }
補充:unity同個物體多個材質(zhì)替換處理
我就廢話不多說了,大家還是直接看代碼吧~
public Material[] MatAry; public Material[] mat; public GameObject obj; MatAry = obj.GetComponent<Renderer>().materials; MatAry = mat; obj.GetComponent<Renderer>().materials = MatAry;
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
您可能感興趣的文章:
相關(guān)文章
C#基礎(chǔ)教程之類class與結(jié)構(gòu)struct的區(qū)別
struct是值類型,創(chuàng)建一個struct類型的實例被分配在棧上,class是引用類型,創(chuàng)建一個class類型實例被分配在托管堆上,下面這篇文章主要給大家介紹了關(guān)于C#基礎(chǔ)教程之類class與結(jié)構(gòu)struct區(qū)別的相關(guān)資料,需要的朋友可以參考下2022-11-11C#編程中常見數(shù)據(jù)結(jié)構(gòu)的比較(Unity3D游戲開發(fā))
在本篇內(nèi)容里我們給大家整理了關(guān)于Unity3D游戲開發(fā)中C#編程中常見數(shù)據(jù)結(jié)構(gòu)的比較相關(guān)知識點內(nèi)容,需要的朋友們參考下。2019-05-05