Unity 一鍵替換場景中的物體

2021-10-23 04:55:48 字數 1445 閱讀 3701

實現場景中批量替換預製體的編輯器功能。

一、關鍵api

prefabutility.instantiateprefab 將預設例項化到場景中,與gameobject.instantiate不同,它是以預設例項的。

二、工具截圖

三、使用方法

在project中拖拽預設到工具中

開啟需要操作的場景,可以多選需要替換的物體,或者輸入需要替換的名字

修改完成後儲存場景

四、**

using system.collections.generic;

using unityeditor;

using unityeditor.scenemanagement;

using unityengine;

public class objectreplaceeditorwindow : editorwindow

public gameobject newprefab;

static gameobject tonewprefab;

private string replacename = "";

private bool ischangename = false;

public class replacedata

void ongui()

editorguilayout.labelfield("----------------------");

replacename = editorguilayout.textfield("需要替換的物體名字", replacename);

if (guilayout.button("替換相同名字的"))

if (guilayout.button("替換包含名字的 慎用"))

editorguilayout.labelfield("----------------------");

if (guilayout.button("儲存修改"))

}void replaceobjects()

handlereplacedata(replacedatas);

}void handlereplacedata(listreplacedatas)

}void replaceobjectsbyname(string name, bool iscontain)

else if (iscontain && item.gameobject.name.contains(name))

}handlereplacedata(replacedatas);

}public void replaceone(replacedata replacedata)

}

pandas中的替換場景

工作中有個坑,自己做之前效率太低,後來知道了乙個方法。應用場景如下,需要在乙個資料中找到為空的值,然後用同樣的值去替換,或者用同一行中,右邊的值,替換掉為空的值。其中,需要用到的函式為 import numpy as np import pandas as pd df.fillna 0 將取值為na...

Viz Artist中如何快速替換場景中的字型

很多人不了解ghm的強大,我也是這很多人中的乙個,那麼當你需要替換乙個場景中的字型,你會怎麼做呢?以前的話,我會開啟viz artist,然後找到所要文字的container,然後手動替換,那麼現在你可以這麼做 1.執行viz ghm,用管理員身份 admin 登入,不知道密碼的同志請記一下 viz...

unity獲取場景中物體的幾種方式

在編輯 時,需要獲取場景中的物體和元件,對於不同的情況有不同的方法 當 在物體上時,可以直接使用gameobject和transform等方法,獲取該物體的元件為 使用或者不使用 this gameobject.getcomponent 元件名字 獲取子物體和子物體可以使用的有下面幾種 1,使用ge...