Unity3d使用脚本自如编辑GameObject
在工作中,发现想对Scene内的Object进行程序化编辑,例如当一个父对象的中心感官上并不是这个物体的中心时,我们想对所有的子对象的transform进行平移,也就是(x,y,z)加上一个vector3的offset,此时如果手动平移工作量巨大,使用脚本快速而正确。
经过查阅资料后发现,这类脚本只能当做一个插件来执行,无法挂载到某个具体的GameObject上在playmode下执行。而这类插件的存在和使用形式就是在top menu里增加一个自定义的菜单,点一次则执行一次,完全与我的目标契合。
步骤一
首先我们在Project视图里,新建一个 “Editor” 目录(名字一定要准确),然后添加一个C#脚本。
步骤二
在脚本中写入:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
public class Shift {
[MenuItem("Cu