protected override void CustomOnGUI() { foreach (var monoScript in ScriptList) { EditorUIHelper.BeginHorizontal(); EditorUIHelper.ObjectField(monoScript); EditorUIHelper.Button("创建", () => CreateScriptObject(monoScript)); EditorUIHelper.EndHorizontal(); EditorUIHelper.Space(); } }
protected override void CustomOnGUI() { EditorUIHelper.BeginHorizontal(); { _curModelType = EditorUIHelper.EnumPopup <ModelType>(_curModelType); if (GUI.changed) { Refresh(); } EditorUIHelper.Button("刷新", Refresh); } EditorUIHelper.EndHorizontal(); EditorUIHelper.Space(); _search = EditorUIHelper.SearchCancelTextField(_search); EditorUIHelper.Space(); _scroll = EditorUIHelper.BeginScrollView(_scroll); { for (int i = 0; i < _models.Count; i++) { var importer = _modelImporters[i]; var model = _models[i]; if (!string.IsNullOrEmpty(_search)) { if (!model.name.Contains(_search)) { continue; } } EditorUIHelper.DrawLine(); EditorUIHelper.BeginHorizontal(); { EditorUIHelper.ObjectField(model); EditorUIHelper.Toggle("绑点优化状态", importer.animationType == ModelImporterAnimationType.Generic && importer.optimizeGameObjects); EditorUIHelper.Button("优化绑点", () => EditorHelper.Run(() => ModelOptimizeHelper.OptimizeGameObject(importer))); EditorUIHelper.Button("还原绑点", () => EditorHelper.Run(() => ModelOptimizeHelper.RevertOptimizeGameObject(importer))); } EditorUIHelper.EndHorizontal(); } } EditorUIHelper.EndScrollView(); }
public virtual void ShowResult() { foreach (var sickAsset in _sickAssets) { EditorUIHelper.BeginHorizontal(); { EditorUIHelper.ObjectField(sickAsset); EditorUIHelper.Space(); EditorUIHelper.Button("修正", () => { IsSickAsset(sickAsset, true); }); } EditorUIHelper.EndHorizontal(); } }
protected override void CustomOnGUI() { if (_msg != null) { EditorUIHelper.TitleField(_msg); EditorUIHelper.Space(); } _search = EditorUIHelper.SearchCancelTextField(_search); _searchFilter = EditorUIHelper.EnumPopup <EditorAssetHelper.SearchFilter>(_searchFilter, "SearchFilter"); EditorUIHelper.TitleField("数量:", (_goList != null ? _goList.Count : 0).ToString()); EditorUIHelper.Space(); _ListScroll = EditorUIHelper.BeginScrollView(_ListScroll); { var count = _goList != null ? _goList.Count : 0; var needSearch = !string.IsNullOrEmpty(_search); for (int i = 0; i < count; i++) { var go = _goList[i]; if (needSearch && !go.name.Contains(_search)) { continue; } if (!EditorAssetHelper.IsMatch(go, _searchFilter)) { continue; } EditorUIHelper.DrawLine(); EditorUIHelper.BeginHorizontal(); { EditorUIHelper.ObjectField(go, null, string.Empty, true); EditorUIHelper.Button("选中", () => EditorAssetHelper.SelectObject(go)); var index = i; EditorUIHelper.Button("移除", () => RemoveGo(index)); } EditorUIHelper.EndHorizontal(); } } EditorUIHelper.EndScrollView(); }
protected override void CustomOnGUI() { EditorUIHelper.BeginChangeCheck(); { _selectedIndex = EditorUIHelper.Popup("类型:", _selectedIndex, AssetImporterTypeStrs); } if (EditorUIHelper.EndChangeCheck()) { ClearData(); } var op = Operator; if (op != null) { EditorUIHelper.Space(); EditorUIHelper.BeginHorizontal(); { _showTypeIndex = EditorUIHelper.Toolbar(_showTypeIndex, _showTypes); } EditorUIHelper.EndHorizontal(); EditorUIHelper.Space(); EditorUIHelper.BeginChangeCheck(); { _searchText = EditorUIHelper.SearchCancelTextField(_searchText); } if (EditorUIHelper.EndChangeCheck()) { ClearData(); } EditorUIHelper.Space(); _showTypeScroll = EditorUIHelper.BeginScrollView(_showTypeScroll); { ShowTypePanel(); } EditorUIHelper.EndScrollView(); } }
private void ShowAssets() { if (_assetPaths == null) { _assetPaths = Operator.GetAssetPaths(); if (!string.IsNullOrEmpty(_searchText)) { _assetPaths = _assetPaths.Where(s => s.Contains(_searchText)).ToList(); } } var count = _assetPaths.Count; for (int i = 0; i < count; i++) { EditorUIHelper.Space(0.1f); EditorUIHelper.BeginSelectdColor(_selectedObjIndex == i); { EditorUIHelper.BeginHorizontal(EditorUIHelper.TextAreaStyle); { var path = _assetPaths[i]; var i1 = i; EditorUIHelper.Button(path, () => { EditorAssetHelper.SelectObject(AssetDatabase.LoadMainAssetAtPath(path)); _selectedObjIndex = i1; }, EditorUIHelper.TextFieldStyle); } EditorUIHelper.EndHorizontal(); } EditorUIHelper.EndSelectedColor(); } if (_selectedObjIndex >= 0) { ShowSettingPanel(Operator.GetImporterSetting(_assetPaths[_selectedObjIndex])); } }
private static void PreferenceOnGUI() { EditorUIHelper.BeginHorizontal(); { EditorUIHelper.Button("读取", () => { _externalSo = null; }); EditorUIHelper.Button("保存", SaveScriptableObject); EditorUIHelper.Button("增加", () => { ExternalSo.ToolList.Add(new ExternalScriptableObject.ExternalTool()); }); } EditorUIHelper.EndHorizontal(); _scroll = EditorUIHelper.BeginScrollView(_scroll); { foreach (var externalTool in ExternalSo.ToolList) { EditorUIHelper.Space(); externalTool.ToolPath = EditorUIHelper.TextField("路径:", externalTool.ToolPath); externalTool.Extension = EditorUIHelper.TextField("后缀:", externalTool.Extension); var tool = externalTool; EditorUIHelper.Button("删", () => { EditorApplication.delayCall += () => { ExternalSo.ToolList.Remove(tool); }; }); } } EditorUIHelper.EndScrollView(); }
protected override void CustomOnGUI() { EditorUIHelper.BeginHorizontal(); { _searchType = EditorUIHelper.SearchCancelTextField(_searchType); EditorUIHelper.Button("Caculate", Calculate); EditorUIHelper.Button("CaculateAll", CaulateAll); } EditorUIHelper.EndHorizontal(); _scroll = EditorUIHelper.BeginScrollView(_scroll); { foreach (var keyValue in _monoFieldDict) { EditorUIHelper.DrawLine(); EditorUIHelper.TextField("Type:", keyValue.Key); foreach (var method in keyValue.Value) { EditorUIHelper.TextField("Field:", method); } } EditorUIHelper.Space(); foreach (var keyValue in _monoMethodDict) { EditorUIHelper.DrawLine(); EditorUIHelper.TextField("Type:", keyValue.Key); foreach (var method in keyValue.Value) { EditorUIHelper.TextField("Method:", method); } } } EditorUIHelper.EndScrollView(); }
protected override void CustomOnGUI() { _maxHits = EditorUIHelper.IntSlider("射线最多碰撞次数(检测叠层的时候才需要)", _maxHits, MinHitNums, MaxHitNums); _checkLayerMask = EditorUIHelper.LayerMask(_checkLayerMask, "检测层(涉及层)"); _generateLayerMask = EditorUIHelper.LayerMask(_generateLayerMask, "生成层(某些层的内外围)"); EditorUIHelper.Space(); _calculateType = EditorUIHelper.EnumPopup <SceneInfoCalculation.CalculateType>(_calculateType, "筛选条件(如内外围)"); _minRange = EditorUIHelper.IntSlider("边界最近距离(-1代表全部)", _minRange, MinRange, MaxRange); _maxRange = EditorUIHelper.IntSlider("影响最远距离(-1代表全部)", _maxRange, MinRange, MaxRange); EditorUIHelper.Space(); EditorUIHelper.Button("刷新", Refresh); EditorUIHelper.Space(); EditorUIHelper.ObjectField <Texture>(_previewTexture, "预览"); EditorUIHelper.Space(); _noise = EditorUIHelper.Vector4Field("noise偏移及缩放", _noise); _noiseThreshold = EditorUIHelper.Slider("noise阈值", _noiseThreshold, 0, 1); EditorUIHelper.Button("叠加噪声图", CompositionNoise); EditorUIHelper.Space(); EditorUIHelper.ObjectField <Texture>(_finalTexture, "叠加噪声图之后"); EditorUIHelper.Space(); _parent = EditorUIHelper.ObjectField <Transform>(_parent, "父节点", true); _clearParent = EditorUIHelper.Toggle("清理父节点", _clearParent); _space = EditorUIHelper.IntSlider("间隔(密度)", _space, MinSpace, MaxSpace); EditorUIHelper.Space(); EditorUIHelper.BeginScrollView(_scenePrefabScrollPos); var deletePrefabIndex = -1; for (int i = 0; i < _scenePrefabs.Count; i++) { var scenePrefab = _scenePrefabs[i]; EditorUIHelper.BeginHorizontal(); scenePrefab.Prefab = EditorUIHelper.ObjectField <GameObject>(scenePrefab.Prefab); scenePrefab.Weight = EditorUIHelper.IntSlider("权重", scenePrefab.Weight, MinWeight, MaxWeight); var i1 = i; EditorUIHelper.Button("删除", () => { deletePrefabIndex = i1; }); EditorUIHelper.EndHorizontal(); EditorUIHelper.BeginHorizontal(); scenePrefab.MinScale = EditorUIHelper.Slider("缩放随机最小值", scenePrefab.MinScale, MinScale, MaxScale); scenePrefab.MaxScale = EditorUIHelper.Slider("缩放随机最大值", scenePrefab.MaxScale, MinScale, MaxScale); EditorUIHelper.EndHorizontal(); EditorUIHelper.Space(); } if (deletePrefabIndex >= 0) { _scenePrefabs.RemoveAt(deletePrefabIndex); } EditorUIHelper.Button("添加", () => _scenePrefabs.Add(new ScenePrefab())); EditorUIHelper.EndScrollView(); EditorUIHelper.Space(); EditorUIHelper.Button("生成", Generate); }