Compare commits
44 Commits
Author | SHA1 | Date | |
---|---|---|---|
63e57636c0 | |||
![]() |
d0a17c5bbd | ||
![]() |
553b327d4d | ||
![]() |
c8f308c41a | ||
![]() |
29e21dbbe2 | ||
![]() |
4cfe8c73a0 | ||
![]() |
fb2b3228c0 | ||
![]() |
2246d8f136 | ||
![]() |
1dafd474c2 | ||
![]() |
62598385de | ||
![]() |
a414349cda | ||
![]() |
ab03e64ec3 | ||
![]() |
b4824a5490 | ||
![]() |
ccf420747b | ||
![]() |
7f311b9000 | ||
![]() |
7669aa0212 | ||
![]() |
1bfa4d5b41 | ||
![]() |
6e87411074 | ||
![]() |
c9a893fdde | ||
![]() |
db82661e78 | ||
![]() |
40b208a7c5 | ||
![]() |
2d46806ca2 | ||
![]() |
e2ea2241e5 | ||
![]() |
455f64f72c | ||
![]() |
95fa00c675 | ||
![]() |
d470c63fee | ||
![]() |
a2b3bc90a7 | ||
![]() |
89d8712bb5 | ||
![]() |
0bb5c8d293 | ||
![]() |
42fbb35553 | ||
![]() |
45af1a7d81 | ||
![]() |
6a2cbd6dd3 | ||
![]() |
9a8772967a | ||
![]() |
35961651b3 | ||
![]() |
2d13dc20ce | ||
![]() |
363ed7914f | ||
![]() |
5e63d32268 | ||
![]() |
ad5ad99975 | ||
![]() |
52f2856307 | ||
![]() |
6e5241ed2e | ||
![]() |
c6aafef7ae | ||
![]() |
9c0e3deac3 | ||
![]() |
569f645220 | ||
![]() |
b798d5a3ca |
@ -11,8 +11,8 @@ namespace AsmdefHelper.CustomCreate.Editor {
|
||||
public static void ShowWindow() {
|
||||
var window = GetWindow<AsmdefCustomCreateView>();
|
||||
window.titleContent = new GUIContent("AsmdefCustomCreateView");
|
||||
window.minSize = new Vector2(200, 180);
|
||||
window.maxSize = new Vector2(2000, 180);
|
||||
window.minSize = new Vector2(200, 200);
|
||||
window.maxSize = new Vector2(2000, 2000);
|
||||
}
|
||||
|
||||
public void OnEnable() {
|
||||
@ -29,36 +29,51 @@ namespace AsmdefHelper.CustomCreate.Editor {
|
||||
"Packages/dev.n5y.asmdefhelper/AsmdefHelper/CustomCreate/Editor/AsmdefCustomCreateView.uxml");
|
||||
}
|
||||
|
||||
#if UNITY_2020_1_OR_NEWER
|
||||
VisualElement labelFromUXML = visualTree.Instantiate();
|
||||
#else
|
||||
VisualElement labelFromUXML = visualTree.CloneTree();
|
||||
#endif
|
||||
root.Add(labelFromUXML);
|
||||
|
||||
// UI取得
|
||||
var PathTextField = root.Q<TextField>(className: "PathTextField");
|
||||
var NameTextField = root.Q<TextField>(className: "NameTextField");
|
||||
var AllowUnsafeToggle = root.Q<Toggle>(className: "AllowUnsafeToggle");
|
||||
var AutoReferencedToggle = root.Q<Toggle>(className: "AutoReferencedToggle");
|
||||
var OverrideReferencesToggle = root.Q<Toggle>(className: "OverrideReferencesToggle");
|
||||
var NoEngineReferencesToggle = root.Q<Toggle>(className: "NoEngineReferencesToggle");
|
||||
var IsEditorToggle = root.Q<Toggle>(className: "IsEditorToggle");
|
||||
var CreateButton = root.Q<Button>(className: "CreateButton");
|
||||
var pathTextField = root.Q<TextField>(className: "PathTextField");
|
||||
var nameTextField = root.Q<TextField>(className: "NameTextField");
|
||||
var allowUnsafeToggle = root.Q<Toggle>(className: "AllowUnsafeToggle");
|
||||
var autoReferencedToggle = root.Q<Toggle>(className: "AutoReferencedToggle");
|
||||
var noEngineReferencesToggle = root.Q<Toggle>(className: "NoEngineReferencesToggle");
|
||||
var overrideReferencesToggle = root.Q<Toggle>(className: "OverrideReferencesToggle");
|
||||
var rootNamespaceTextField = root.Q<TextField>(className: "RootNamespaceTextField");
|
||||
var isEditorToggle = root.Q<Toggle>(className: "IsEditorToggle");
|
||||
var createButton = root.Q<Button>(className: "CreateButton");
|
||||
|
||||
// PathとNameの初期値
|
||||
var asset = Selection.activeObject;
|
||||
var assetPath = AssetDatabase.GetAssetPath(asset);
|
||||
var directory = string.IsNullOrWhiteSpace(assetPath) ? "Assets/" : assetPath;
|
||||
PathTextField.value = directory;
|
||||
NameTextField.value = directory.Replace("Assets/", "").Replace('/', '.');
|
||||
pathTextField.value = directory;
|
||||
var defaultName = directory.Replace("Assets/", "").Replace('/', '.');
|
||||
nameTextField.value = defaultName;
|
||||
|
||||
// RootNamespace が設定できるのは2020.2以降
|
||||
#if UNITY_2020_2_OR_NEWER
|
||||
rootNamespaceTextField.value = defaultName;
|
||||
#else
|
||||
root.Q<Box>(className: "Box").Remove(rootNamespaceTextField);
|
||||
#endif
|
||||
// .asmdefを作成して閉じる
|
||||
CreateButton.clickable.clicked += () => {
|
||||
var asmdefName = NameTextField.value;
|
||||
createButton.clickable.clicked += () => {
|
||||
var asmdefName = nameTextField.value;
|
||||
var asmdef = new AssemblyDefinitionJson {
|
||||
name = asmdefName,
|
||||
allowUnsafeCode = AllowUnsafeToggle.value,
|
||||
autoReferenced = AutoReferencedToggle.value,
|
||||
overrideReferences = OverrideReferencesToggle.value,
|
||||
noEngineReferences = NoEngineReferencesToggle.value,
|
||||
includePlatforms = IsEditorToggle.value ? new[] { "Editor" } : new string[0]
|
||||
#if UNITY_2020_2_OR_NEWER
|
||||
rootNamespace = rootNamespaceTextField.value,
|
||||
#endif
|
||||
allowUnsafeCode = allowUnsafeToggle.value,
|
||||
autoReferenced = autoReferencedToggle.value,
|
||||
overrideReferences = overrideReferencesToggle.value,
|
||||
noEngineReferences = noEngineReferencesToggle.value,
|
||||
includePlatforms = isEditorToggle.value ? new[] { "Editor" } : new string[0]
|
||||
};
|
||||
var asmdefJson = JsonUtility.ToJson(asmdef, true);
|
||||
var asmdefPath = $"{directory}/{asmdefName}.asmdef";
|
||||
|
@ -6,13 +6,14 @@
|
||||
xsi:noNamespaceSchemaLocation="../../../../UIElementsSchema/UIElements.xsd"
|
||||
>
|
||||
<engine:Label class="AsmdefInfo" text="Input your asmdef info"/>
|
||||
<engine:Box>
|
||||
<engine:Box class="Box">
|
||||
<engine:TextField class="PathTextField" label="Path" text="ASMDEF_PATH_HERE" readonly="true"/>
|
||||
<engine:TextField class="NameTextField" label="Name" text="ASMDEF_NAME_HERE"/>
|
||||
<engine:Toggle class="AllowUnsafeToggle" label="Allow 'unsafe' Code" value="false"/>
|
||||
<engine:Toggle class="AutoReferencedToggle" label="Auto Referenced" value="true"/>
|
||||
<engine:Toggle class="OverrideReferencesToggle" label="Override Referenced" value="false"/>
|
||||
<engine:Toggle class="NoEngineReferencesToggle" label="No Engine References" value="false"/>
|
||||
<engine:Toggle class="OverrideReferencesToggle" label="Override Referenced" value="false"/>
|
||||
<engine:TextField class="RootNamespaceTextField" label="Root Namespace" text="ROOT_NAMESPACE_HERE"/>
|
||||
<engine:Toggle class="IsEditorToggle" label="Is Editor" value="false"/>
|
||||
<engine:Button class="CreateButton" text="Create" />
|
||||
</engine:Box>
|
||||
|
@ -21,8 +21,8 @@ namespace AsmdefHelper.CustomCreate.Editor {
|
||||
if (extension == "asmdef") {
|
||||
var window = GetWindow<AsmdefRenameView>();
|
||||
window.titleContent = new GUIContent("AsmdefRenameView");
|
||||
window.minSize = new Vector2(200, 80);
|
||||
window.maxSize = new Vector2(2000, 80);
|
||||
window.minSize = new Vector2(200, 100);
|
||||
window.maxSize = new Vector2(2000, 100);
|
||||
}
|
||||
}
|
||||
|
||||
@ -40,33 +40,50 @@ namespace AsmdefHelper.CustomCreate.Editor {
|
||||
"Packages/dev.n5y.asmdefhelper/AsmdefHelper/CustomCreate/Editor/AsmdefRenameView.uxml");
|
||||
}
|
||||
|
||||
#if UNITY_2020_1_OR_NEWER
|
||||
VisualElement labelFromUXML = visualTree.Instantiate();
|
||||
#else
|
||||
VisualElement labelFromUXML = visualTree.CloneTree();
|
||||
#endif
|
||||
root.Add(labelFromUXML);
|
||||
|
||||
// UI取得
|
||||
var PathTextField = root.Q<TextField>(className: "PathTextField");
|
||||
var NameTextField = root.Q<TextField>(className: "NameTextField");
|
||||
var CreateButton = root.Q<Button>(className: "RenameButton");
|
||||
var pathTextField = root.Q<TextField>(className: "PathTextField");
|
||||
var nameTextField = root.Q<TextField>(className: "NameTextField");
|
||||
var rootNamespaceTextField = root.Q<TextField>(className: "RootNamespaceTextField");
|
||||
var createButton = root.Q<Button>(className: "RenameButton");
|
||||
|
||||
// 既存のasmdef読み込み
|
||||
var orgText = File.ReadAllText(renameAsmdefPath);
|
||||
var asmdef = JsonUtility.FromJson<AssemblyDefinitionJson>(orgText);
|
||||
|
||||
// 既存パラメータの反映
|
||||
PathTextField.value = asmdefDirectory;
|
||||
NameTextField.value = asmdef.name;
|
||||
pathTextField.value = asmdefDirectory;
|
||||
nameTextField.value = asmdef.name;
|
||||
var asmdefNameOrg = asmdef.name;
|
||||
|
||||
// RootNamespace が設定できるのは2020.2以降
|
||||
#if UNITY_2020_2_OR_NEWER
|
||||
rootNamespaceTextField.value = asmdef.rootNamespace;
|
||||
#else
|
||||
root.Q<Box>(className: "Box").Remove(rootNamespaceTextField);
|
||||
#endif
|
||||
|
||||
// .asmdefのnameとファイル名を更新して閉じる
|
||||
CreateButton.clickable.clicked += () => {
|
||||
// nameのみ更新
|
||||
var asmdefName = NameTextField.value;
|
||||
createButton.clickable.clicked += () => {
|
||||
var asmdefName = nameTextField.value;
|
||||
asmdef.name = asmdefName;
|
||||
#if UNITY_2020_2_OR_NEWER
|
||||
asmdef.rootNamespace = rootNamespaceTextField.value;
|
||||
#endif
|
||||
var asmdefJson = JsonUtility.ToJson(asmdef, true);
|
||||
var newAsmdefPath = $"{asmdefDirectory}/{asmdefName}.asmdef";
|
||||
// 新asmdef作成
|
||||
File.WriteAllText(newAsmdefPath, asmdefJson, Encoding.UTF8);
|
||||
// 旧asmdef削除
|
||||
File.Delete(renameAsmdefPath);
|
||||
// ファイル名が変わった場合は旧asmdef削除
|
||||
if (asmdefNameOrg != asmdefName) {
|
||||
FileUtil.DeleteFileOrDirectory(renameAsmdefPath);
|
||||
}
|
||||
AssetDatabase.Refresh();
|
||||
Close();
|
||||
};
|
||||
|
@ -9,6 +9,7 @@
|
||||
<engine:Box>
|
||||
<engine:TextField class="PathTextField" label="Path" text="ASMDEF_PATH_HERE" readonly="true"/>
|
||||
<engine:TextField class="NameTextField" label="Name" text="ASMDEF_NAME_HERE"/>
|
||||
<engine:TextField label="Root Namespace" text="ROOT_NAMESPACE_HERE" class="RootNamespaceTextField" />
|
||||
<engine:Button class="RenameButton" text="Rename" />
|
||||
</engine:Box>
|
||||
</engine:UXML>
|
||||
|
@ -1,6 +1,9 @@
|
||||
namespace AsmdefHelper.CustomCreate.Editor {
|
||||
public class AssemblyDefinitionJson {
|
||||
public string name = string.Empty;
|
||||
#if UNITY_2020_2_OR_NEWER
|
||||
public string rootNamespace = string.Empty;
|
||||
#endif
|
||||
public string[] references = new string[0];
|
||||
public string[] includePlatforms = new string[0];
|
||||
public string[] excludePlatforms = new string[0];
|
||||
|
@ -1,10 +1,11 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEditor;
|
||||
using UnityEditor;
|
||||
using UnityEditor.Compilation;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
public class AsmdefGraphEditorWindow : EditorWindow {
|
||||
public class AsmdefGraphEditorWindow : EditorWindow, IToggleCheckDelegate {
|
||||
static AsmdefSelectionView selectionWindow;
|
||||
AsmdefGraphView graphView;
|
||||
|
||||
[MenuItem("AsmdefHelper/Open DependencyGraph", priority = 2000)]
|
||||
public static void Open() {
|
||||
GetWindow<AsmdefGraphEditorWindow>("Asmdef Dependency");
|
||||
@ -14,10 +15,26 @@ namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
// .asmdefをすべて取得
|
||||
var asmdefs = CompilationPipeline.GetAssemblies();
|
||||
// viewの作成
|
||||
var graphView = new AsmdefGraphView(asmdefs) {
|
||||
graphView = new AsmdefGraphView(asmdefs) {
|
||||
style = { flexGrow = 1 }
|
||||
};
|
||||
rootVisualElement.Add(graphView);
|
||||
|
||||
// 選択ウィンドウも作成
|
||||
selectionWindow = GetWindow<AsmdefSelectionView>("Asmdef Selection");
|
||||
selectionWindow.SetAsmdef(asmdefs, this);
|
||||
}
|
||||
|
||||
// 片方を閉じる
|
||||
void OnDestroy() {
|
||||
if (selectionWindow != null) {
|
||||
selectionWindow.Close();
|
||||
}
|
||||
selectionWindow = null;
|
||||
}
|
||||
|
||||
void IToggleCheckDelegate.OnSelectionChanged(string label, bool isChecked) {
|
||||
graphView.SetNodeVisibility(label, isChecked);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -10,6 +10,7 @@ using UnityEngine.UIElements;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
public sealed class AsmdefGraphView : GraphView {
|
||||
readonly Dictionary<string, IAsmdefNodeView> asmdefNodeDict;
|
||||
public AsmdefGraphView(IEnumerable<Assembly> assemblies) {
|
||||
var assemblyArr = assemblies.ToArray();
|
||||
// zoom可能に
|
||||
@ -18,8 +19,10 @@ namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
Insert(0, new GridBackground());
|
||||
// ドラッグによる移動可能に
|
||||
this.AddManipulator(new SelectionDragger());
|
||||
// ドラッグで描画範囲を動かせるように
|
||||
this.AddManipulator(new ContentDragger());
|
||||
// ノードの追加
|
||||
var asmdefNodeDict = new Dictionary<string, IAsmdefNodeView>();
|
||||
asmdefNodeDict = new Dictionary<string, IAsmdefNodeView>();
|
||||
foreach (var asm in assemblyArr) {
|
||||
var node = new AsmdefNode(asm.name, contentContainer);
|
||||
AddElement(node);
|
||||
@ -57,6 +60,14 @@ namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
}
|
||||
}
|
||||
|
||||
// Portに接続数を追記
|
||||
foreach (var dep in dependencies) {
|
||||
if (asmdefNodeDict.TryGetValue(dep.Profile.Name, out var node)) {
|
||||
node.LeftPort.Label = $"RefBy({dep.Sources.Count})";
|
||||
node.RightPort.Label = $"RefTo({dep.Destinations.Count})";
|
||||
}
|
||||
}
|
||||
|
||||
// ノードの場所を整列
|
||||
var sortStrategy = new AlignSortStrategy(AlignParam.Default(), Vector2.zero);
|
||||
var sortedNode = sortStrategy.Sort(dependencies);
|
||||
@ -67,6 +78,12 @@ namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
}
|
||||
}
|
||||
|
||||
public void SetNodeVisibility(string nodeName, bool visible_) {
|
||||
if (asmdefNodeDict.TryGetValue(nodeName, out var node)) {
|
||||
node.Visibility = visible_;
|
||||
}
|
||||
}
|
||||
|
||||
public override List<Port> GetCompatiblePorts(Port startAnchor, NodeAdapter nodeAdapter) {
|
||||
return ports.ToList();
|
||||
}
|
||||
|
@ -4,17 +4,34 @@ using UnityEngine.UIElements;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
public class AsmdefNode : UiElementsNodeView, IAsmdefNodeView {
|
||||
public IPort LeftPort { get; }
|
||||
public IPort RightPort { get; }
|
||||
readonly GraphViewPort leftPort;
|
||||
readonly GraphViewPort rightPort;
|
||||
public IPort LeftPort => leftPort;
|
||||
public IPort RightPort => rightPort;
|
||||
|
||||
public AsmdefNode(string nodeName, VisualElement parentContentContainer) {
|
||||
Label = nodeName;
|
||||
|
||||
LeftPort = new GraphViewPort(parentContentContainer, Direction.Input) { Label = "Ref By" };
|
||||
leftPort = new GraphViewPort(parentContentContainer, Direction.Input) { Label = "Ref By" };
|
||||
inputContainer.Add(LeftPort as Port); // as right side
|
||||
|
||||
RightPort = new GraphViewPort(parentContentContainer, Direction.Output) { Label = "Ref To" };
|
||||
rightPort = new GraphViewPort(parentContentContainer, Direction.Output) { Label = "Ref To" };
|
||||
outputContainer.Add(RightPort as Port); // as left side
|
||||
}
|
||||
|
||||
public override bool Visibility {
|
||||
get => base.Visibility;
|
||||
set {
|
||||
base.Visibility = value;
|
||||
// right(output)
|
||||
foreach (var edge in rightPort.connections) {
|
||||
edge.visible = edge.input.node.visible & visible;
|
||||
}
|
||||
// left(input)
|
||||
foreach (var edge in leftPort.connections) {
|
||||
edge.visible = edge.output.node.visible & visible;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7f68a5c3b1e9b8b4aa69caf9b0838471
|
||||
guid: 686371b55f14bdb4ca1a0ee236361071
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
@ -0,0 +1,124 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode;
|
||||
using UnityEditor;
|
||||
using UnityEditor.Compilation;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UIElements;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
public class AsmdefSelectionView : EditorWindow {
|
||||
const int toggleCount = 1000;
|
||||
static EditorWindow graphWindow;
|
||||
readonly ToggleDict groupMasterToggleDict = new ToggleDict();
|
||||
readonly ToggleDict toggleDict = new ToggleDict();
|
||||
IToggleCheckDelegate toggleDelegate;
|
||||
|
||||
public void OnEnable() {
|
||||
graphWindow = GetWindow<AsmdefGraphEditorWindow>();
|
||||
|
||||
// Each editor window contains a root VisualElement object
|
||||
VisualElement root = rootVisualElement;
|
||||
|
||||
// Import UXML
|
||||
var visualTree =
|
||||
AssetDatabase.LoadAssetAtPath<VisualTreeAsset>(
|
||||
"Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefSelectionView/AsmdefSelectionView.uxml");
|
||||
if (visualTree == null) {
|
||||
visualTree =
|
||||
AssetDatabase.LoadAssetAtPath<VisualTreeAsset>(
|
||||
"Packages/dev.n5y.asmdefhelper/AsmdefHelper/DependencyGraph/Editor/AsmdefSelectionView/AsmdefSelectionView.uxml");
|
||||
}
|
||||
|
||||
#if UNITY_2020_1_OR_NEWER
|
||||
VisualElement labelFromUXML = visualTree.Instantiate();
|
||||
#else
|
||||
VisualElement labelFromUXML = visualTree.CloneTree();
|
||||
#endif
|
||||
root.Add(labelFromUXML);
|
||||
}
|
||||
|
||||
public void SetAsmdef(Assembly[] assemblies, IToggleCheckDelegate toggleDelegate_) {
|
||||
var sortedAssemblies = assemblies.OrderBy(x => x.name).ToArray();
|
||||
var scrollView = rootVisualElement.Q<ScrollView>(className: "ScrollView");
|
||||
toggleDict.Clear();
|
||||
for (var i = 0; i < toggleCount; i++) {
|
||||
var toggle = rootVisualElement.Q<Toggle>(className: $"toggle{i}");
|
||||
if (i < sortedAssemblies.Length) {
|
||||
var assemblyName = sortedAssemblies[i].name;
|
||||
toggle.text = assemblyName;
|
||||
toggle.value = true;
|
||||
toggleDict.Add(assemblyName, new UiElementToggle(toggle));
|
||||
} else {
|
||||
scrollView.Remove(toggle);
|
||||
}
|
||||
}
|
||||
|
||||
// グループに分ける
|
||||
var group = new DomainGroup();
|
||||
group.Create(sortedAssemblies.Select(x => x.name));
|
||||
var tops = group.GetTopDomainsWithSomeSubDomains().ToArray();
|
||||
foreach (var top in tops) {
|
||||
var topToggle = new Toggle { text = top, value = true};
|
||||
var slaveToggles = new List<IToggle>();
|
||||
Toggle firstToggle = null;
|
||||
var domains = group.GetSubDomains(top);
|
||||
foreach (var domain in domains) {
|
||||
var isLast = domains.Last() == domain;
|
||||
if (toggleDict.TryGetToggle(domain.FullName, out var toggle)) {
|
||||
var keisen = isLast ? "└" : "├";
|
||||
toggle.Name = domain.HasSubDomain() ? $"{keisen} {domain.SubDomain}" : toggle.Name;
|
||||
slaveToggles.Add(toggle);
|
||||
if (firstToggle == null && toggle is UiElementToggle y) {
|
||||
firstToggle = y.Toggle;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var toggleGroup = new ToggleGroup(new UiElementToggle(topToggle), slaveToggles);
|
||||
if (firstToggle != null) {
|
||||
var index = scrollView.IndexOf(firstToggle);
|
||||
// グループに属する toggle は box に入れる
|
||||
var box = new Box();
|
||||
scrollView.Insert(index, topToggle);
|
||||
scrollView.Insert(index + 1, box);
|
||||
foreach (var slaveToggle in slaveToggles) {
|
||||
if (slaveToggle is UiElementToggle x) {
|
||||
box.Add(x.Toggle);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
groupMasterToggleDict.Add(top, toggleGroup);
|
||||
}
|
||||
|
||||
toggleDelegate = toggleDelegate_;
|
||||
}
|
||||
|
||||
void OnGUI() {
|
||||
// toggle の更新を監視 (onValueChangedが無さそう)
|
||||
// ToggleGroup の長
|
||||
var updatedGroups = groupMasterToggleDict.ScanUpdate().ToArray();
|
||||
groupMasterToggleDict.OverwriteToggles(updatedGroups.Select(x => x.Item1));
|
||||
// 普通の Toggle達
|
||||
var updated = toggleDict.ScanUpdate().ToArray();
|
||||
foreach (var x in updated) {
|
||||
var (key, current) = x;
|
||||
toggleDelegate?.OnSelectionChanged(key, current);
|
||||
}
|
||||
}
|
||||
|
||||
// 片方を閉じる
|
||||
async void OnDestroy() {
|
||||
// 同フレームで OnDestroy を呼ぶと警告が出るので遅延実行
|
||||
await Task.Delay(1);
|
||||
if (graphWindow != null) {
|
||||
graphWindow.Close();
|
||||
}
|
||||
graphWindow = null;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 69bee09693f54d46954fb60401f58b66
|
||||
timeCreated: 1606312787
|
@ -0,0 +1,5 @@
|
||||
Label {
|
||||
font-size: 20px;
|
||||
-unity-font-style: bold;
|
||||
color: rgb(68, 138, 255);
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7906d8f1d4e539745bf53fba8fc20d3a
|
||||
ScriptedImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
|
||||
disableValidation: 0
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,10 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 24d749776c208f4408be0cfccb02d1c7
|
||||
ScriptedImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}
|
@ -0,0 +1,6 @@
|
||||
namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
public interface IToggle {
|
||||
bool IsOn { set; get; }
|
||||
string Name { set; get; }
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4f8c1aea6924490e9d1f3745569b7c03
|
||||
timeCreated: 1606663328
|
@ -0,0 +1,5 @@
|
||||
namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
public interface IToggleCheckDelegate {
|
||||
void OnSelectionChanged(string label, bool isChecked);
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0c48da7c3f95419cbfc95c4ec2816489
|
||||
timeCreated: 1606313215
|
@ -0,0 +1,58 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
public class ToggleDict {
|
||||
class TogglePair {
|
||||
public bool prevToggleValue;
|
||||
public readonly IToggle toggle;
|
||||
|
||||
public TogglePair(IToggle toggle) {
|
||||
this.toggle = toggle;
|
||||
prevToggleValue = toggle.IsOn;
|
||||
}
|
||||
}
|
||||
|
||||
readonly IDictionary<string, TogglePair> dict;
|
||||
|
||||
public ToggleDict() {
|
||||
dict = new Dictionary<string, TogglePair>();
|
||||
}
|
||||
|
||||
public void Add(string key, IToggle toggle) {
|
||||
dict.Add(key, new TogglePair(toggle));
|
||||
}
|
||||
|
||||
public IEnumerable<(string, bool)> ScanUpdate() {
|
||||
return dict
|
||||
.Where(x => x.Value.prevToggleValue != x.Value.toggle.IsOn)
|
||||
.Select(x => {
|
||||
// 更新も行う
|
||||
dict[x.Key].prevToggleValue = x.Value.toggle.IsOn;
|
||||
return (x.Key, x.Value.toggle.IsOn);
|
||||
});
|
||||
}
|
||||
|
||||
public void OverwriteToggles(IEnumerable<string> updateKeys) {
|
||||
// UI 上の Toggle の check が変わってもisOnには反映されないのでここで設定
|
||||
foreach (var keys in updateKeys) {
|
||||
var val = dict[keys];
|
||||
val.toggle.IsOn = val.toggle.IsOn;
|
||||
}
|
||||
}
|
||||
|
||||
public bool TryGetToggle(string key, out IToggle toggle) {
|
||||
if (dict.TryGetValue(key, out var x)) {
|
||||
toggle = x.toggle;
|
||||
return true;
|
||||
}
|
||||
|
||||
toggle = default;
|
||||
return false;
|
||||
}
|
||||
|
||||
public void Clear() {
|
||||
dict.Clear();
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8725d14bce6043b387ea7f0361a56750
|
||||
timeCreated: 1606747756
|
@ -0,0 +1,28 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
public class ToggleGroup : IToggle {
|
||||
readonly IToggle masterToggle;
|
||||
readonly IEnumerable<IToggle> slaveToggles;
|
||||
|
||||
public ToggleGroup(IToggle masterToggle, IEnumerable<IToggle> slaveToggles) {
|
||||
this.masterToggle = masterToggle;
|
||||
this.slaveToggles = slaveToggles;
|
||||
}
|
||||
|
||||
public string Name {
|
||||
get => masterToggle.Name;
|
||||
set => masterToggle.Name = value;
|
||||
}
|
||||
|
||||
public bool IsOn {
|
||||
get => masterToggle.IsOn;
|
||||
set {
|
||||
masterToggle.IsOn = value;
|
||||
foreach (var toggle in slaveToggles) {
|
||||
toggle.IsOn = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5308ff649752450ba423e8ce799f2048
|
||||
timeCreated: 1606663303
|
@ -0,0 +1,10 @@
|
||||
using UnityEngine.UIElements;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor {
|
||||
public class UiElementToggle : IToggle {
|
||||
public readonly Toggle Toggle;
|
||||
public UiElementToggle(Toggle toggle) => Toggle = toggle;
|
||||
public string Name { get => Toggle.text; set => Toggle.text = value; }
|
||||
public bool IsOn { get => Toggle.value; set => Toggle.value = value; }
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: faa82404bed34442b46aceb699aa2fd6
|
||||
timeCreated: 1606663359
|
@ -0,0 +1,67 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode {
|
||||
public class DomainGroup {
|
||||
readonly Dictionary<string, List<DomainUnit>> dict;
|
||||
|
||||
public DomainGroup() {
|
||||
dict = new Dictionary<string, List<DomainUnit>>();
|
||||
}
|
||||
|
||||
public void Create(IEnumerable<string> all) {
|
||||
dict.Clear();
|
||||
foreach (var str in all) {
|
||||
var unit = new DomainUnit(str, '.');
|
||||
if (!unit.HasSubDomain()) {
|
||||
unit = new DomainUnit(str, '-');
|
||||
}
|
||||
if (!unit.HasSubDomain()) {
|
||||
unit = new DomainUnit(str, '_');
|
||||
}
|
||||
|
||||
if (!unit.HasSubDomain()) {
|
||||
dict.Add(unit.FullName, new List<DomainUnit> { unit });
|
||||
} else {
|
||||
if (dict.TryGetValue(unit.TopDomain, out var list)) {
|
||||
list.Add(unit);
|
||||
} else {
|
||||
dict.Add(unit.TopDomain, new List<DomainUnit> { unit });
|
||||
}
|
||||
}
|
||||
}
|
||||
// 1つしかなかったものを単独とする
|
||||
var soloKeys = GetSoloDomains().ToArray();
|
||||
foreach (var key in soloKeys) {
|
||||
var unit = dict[key].FirstOrDefault();
|
||||
if (unit == null || key == unit.FullName) {
|
||||
continue;
|
||||
}
|
||||
|
||||
dict.Remove(key);
|
||||
var newKey = unit.FullName;
|
||||
if (dict.ContainsKey(newKey)) {
|
||||
dict[newKey].Add(unit);
|
||||
} else {
|
||||
dict.Add(newKey, new List<DomainUnit> { new DomainUnit(unit.FullName, '\0') });
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public IEnumerable<string> GetTopDomains() => dict.Keys;
|
||||
public IEnumerable<string> GetSoloDomains() => dict
|
||||
.Where(x => x.Value.Count == 1)
|
||||
.Select(x => x.Key);
|
||||
|
||||
public IEnumerable<string> GetTopDomainsWithSomeSubDomains() => dict
|
||||
.Keys
|
||||
.Except(GetSoloDomains());
|
||||
|
||||
public IEnumerable<DomainUnit> GetSubDomains(string topDomain) {
|
||||
if (dict.TryGetValue(topDomain, out var list)) {
|
||||
return list;
|
||||
}
|
||||
return new DomainUnit[0];
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d9fe84ab1b8c44b0a841738f0ecb37d3
|
||||
timeCreated: 1606659209
|
@ -0,0 +1,27 @@
|
||||
|
||||
|
||||
using System;
|
||||
using System.Linq;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode {
|
||||
public class DomainUnit {
|
||||
public readonly string FullName;
|
||||
public readonly string TopDomain;
|
||||
public readonly string SubDomain;
|
||||
|
||||
public DomainUnit(string fullName, char separator) {
|
||||
this.FullName = fullName;
|
||||
if (string.IsNullOrEmpty(FullName)) return;
|
||||
var split = fullName.Split(separator).Where(x => !string.IsNullOrEmpty(x)).ToArray();
|
||||
if (split.Length < 2) {
|
||||
TopDomain = fullName.Replace(separator.ToString(), "");
|
||||
SubDomain = string.Empty;
|
||||
} else {
|
||||
TopDomain = split[0];
|
||||
SubDomain = split.Skip(1).Aggregate((a, b) => $"{a}{separator}{b}");
|
||||
}
|
||||
}
|
||||
|
||||
public bool HasSubDomain() => !string.IsNullOrEmpty(SubDomain);
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2927a4439ddc45a0a386b64e05220d53
|
||||
timeCreated: 1606658272
|
@ -18,6 +18,7 @@ namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Sort {
|
||||
var posDict = nodeArr.ToDictionary(x => x.Profile, _ => originPosition);
|
||||
|
||||
// まず順番に整列させる
|
||||
nodeArr = nodeArr.OrderBy(x => x.Profile.Name).ToArray();
|
||||
var nodeGrid = new NodeGrid(alignParam.nodeWidth, alignParam.nodeHeight, alignParam.basicDistance, nodeArr.Length);
|
||||
for (var i = 0; i < nodeArr.Length; i++) {
|
||||
posDict[nodeArr[i].Profile] += nodeGrid.GridCenterPositions()[i];
|
||||
@ -43,6 +44,15 @@ namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Sort {
|
||||
}
|
||||
}
|
||||
|
||||
// 接続数に応じて左右に移動させる
|
||||
// ref to が多いものが左に、ref by が多いものが右に
|
||||
const float factor = 60.0F;
|
||||
foreach (var dep in nodeArr) {
|
||||
var score = (dep.Sources.Count - dep.Destinations.Count) * factor;
|
||||
var p = posDict[dep.Profile];
|
||||
posDict[dep.Profile] = new Vector2(p.x + score, p.y);
|
||||
}
|
||||
|
||||
return posDict.Select(x => new SortedNode { Profile = x.Key, Position = x.Value });
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.NodeView {
|
||||
public interface INodeView : IRect {
|
||||
public interface INodeView : IRect, IVisible {
|
||||
string Label { set; get; }
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,5 @@
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.NodeView {
|
||||
public interface IVisible {
|
||||
bool Visibility { set; get; }
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: aecb56b3d2f84f408ad0aff39ba9e24c
|
||||
timeCreated: 1606396097
|
@ -22,5 +22,10 @@ namespace AsmdefHelper.DependencyGraph.Editor.NodeView {
|
||||
public float Height => contentRect.height;
|
||||
|
||||
public float Width => contentRect.width;
|
||||
|
||||
public virtual bool Visibility {
|
||||
get => visible;
|
||||
set => visible = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
3
Assets/AsmdefHelper/DependencyGraph/Editor/Tests.meta
Normal file
3
Assets/AsmdefHelper/DependencyGraph/Editor/Tests.meta
Normal file
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8119c430aef94628a88162f0f2dede2c
|
||||
timeCreated: 1606663500
|
@ -3,8 +3,9 @@ using AsmdefHelper.DependencyGraph.Editor.DependencyNode.Sort;
|
||||
using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine.TestTools;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Tests {
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class DependencyNodeExtensionsTest {
|
||||
|
||||
[SetUp]
|
@ -0,0 +1,53 @@
|
||||
using System.Collections;
|
||||
using System.Linq;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode;
|
||||
using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class DomainGroupTest {
|
||||
|
||||
readonly string[] inputs ={
|
||||
"unity.hoge",
|
||||
"unity.fuga",
|
||||
"unity.foo.bar",
|
||||
"UniRx",
|
||||
"UniRx.Async",
|
||||
"zenject",
|
||||
"zenject-test-framework",
|
||||
"MyAsmdef",
|
||||
"MyAsmdef2_Test",
|
||||
"MyAsmdef3.hoge",
|
||||
"MyAsmdef3-hoge",
|
||||
};
|
||||
|
||||
[Test]
|
||||
public void TestDomainGroup() {
|
||||
var group = new DomainGroup();
|
||||
group.Create(inputs);
|
||||
Assert.That(group.GetTopDomains().Count(), Is.EqualTo(6));
|
||||
Assert.That(group.GetSubDomains("unity").Count(), Is.EqualTo(3));
|
||||
Assert.That(group.GetSubDomains("UniRx").Count(), Is.EqualTo(2));
|
||||
Assert.That(group.GetSubDomains("zenject").Count(), Is.EqualTo(2));
|
||||
Assert.That(group.GetSubDomains("MyAsmdef").Count(), Is.EqualTo(1));
|
||||
Assert.That(group.GetSubDomains("MyAsmdef2_Test").Count(), Is.EqualTo(1));
|
||||
Assert.That(group.GetSubDomains("MyAsmdef3").Count(), Is.EqualTo(2));
|
||||
|
||||
Assert.That(group.GetTopDomainsWithSomeSubDomains().Count(), Is.EqualTo(4));
|
||||
Assert.That(group.GetSoloDomains().Count(), Is.EqualTo(2));
|
||||
|
||||
Assert.That(group.GetSubDomains("unity").Any(x => x.SubDomain == "hoge"), Is.True);
|
||||
Assert.That(group.GetSubDomains("unity").Any(x => x.SubDomain == "fuga"), Is.True);
|
||||
Assert.That(group.GetSubDomains("unity").Any(x => x.SubDomain == "foo.bar"), Is.True);
|
||||
Assert.That(group.GetSubDomains("UniRx").Any(x => x.SubDomain == ""), Is.True);
|
||||
Assert.That(group.GetSubDomains("UniRx").Any(x => x.SubDomain == "Async"), Is.True);
|
||||
Assert.That(group.GetSubDomains("zenject").Any(x => x.SubDomain == ""), Is.True);
|
||||
Assert.That(group.GetSubDomains("zenject").Any(x => x.SubDomain == "test-framework"), Is.True);
|
||||
Assert.That(group.GetSubDomains("MyAsmdef").Any(x => x.SubDomain == ""), Is.True);
|
||||
Assert.That(group.GetSubDomains("MyAsmdef2_Test").Any(x => x.SubDomain == ""), Is.True);
|
||||
Assert.That(group.GetSubDomains("MyAsmdef3").Any(x => x.SubDomain == "hoge"), Is.True);
|
||||
Assert.That(group.GetSubDomains("MyAsmdef3").Count(x => x.SubDomain == "hoge"), Is.EqualTo(2));
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1ccc87caf20a4985a4e3c94bfc1c12c6
|
||||
timeCreated: 1606660230
|
@ -0,0 +1,73 @@
|
||||
using System.Collections;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode;
|
||||
using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class DomainUnitTest {
|
||||
|
||||
[Test]
|
||||
public void TestDomainUnit_HasTopDomain() {
|
||||
var unit = new DomainUnit("abc.def.ghi.jk", '.');
|
||||
Assert.That(unit.FullName, Is.EqualTo("abc.def.ghi.jk"));
|
||||
Assert.That(unit.TopDomain, Is.EqualTo("abc"));
|
||||
Assert.That(unit.SubDomain, Is.EqualTo("def.ghi.jk"));
|
||||
Assert.That(unit.HasSubDomain, Is.True);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDomainUnit_HasNoTopDomain() {
|
||||
var unit = new DomainUnit("abcdefghijk", '.');
|
||||
Assert.That(unit.FullName, Is.EqualTo("abcdefghijk"));
|
||||
Assert.That(unit.TopDomain, Is.EqualTo("abcdefghijk"));
|
||||
Assert.That(unit.SubDomain, Is.Empty);
|
||||
Assert.That(unit.HasSubDomain, Is.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDomainUnit_StartWithSeparator() {
|
||||
var unit = new DomainUnit(".abc", '.');
|
||||
Assert.That(unit.FullName, Is.EqualTo(".abc"));
|
||||
Assert.That(unit.TopDomain, Is.EqualTo("abc"));
|
||||
Assert.That(unit.SubDomain, Is.Empty);
|
||||
Assert.That(unit.HasSubDomain, Is.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDomainUnit_EndWithSeparator() {
|
||||
var unit = new DomainUnit("abc.", '.');
|
||||
Assert.That(unit.FullName, Is.EqualTo("abc."));
|
||||
Assert.That(unit.TopDomain, Is.EqualTo("abc"));
|
||||
Assert.That(unit.SubDomain, Is.Empty);
|
||||
Assert.That(unit.HasSubDomain, Is.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDomainUnit_StartAndEndWithSeparator() {
|
||||
var unit = new DomainUnit(".abc.def.", '.');
|
||||
Assert.That(unit.FullName, Is.EqualTo(".abc.def."));
|
||||
Assert.That(unit.TopDomain, Is.EqualTo("abc"));
|
||||
Assert.That(unit.SubDomain, Is.EqualTo("def"));
|
||||
Assert.That(unit.HasSubDomain, Is.True);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDomainUnit_OnlySeparator() {
|
||||
var unit = new DomainUnit(".", '.');
|
||||
Assert.That(unit.FullName, Is.EqualTo("."));
|
||||
Assert.That(unit.TopDomain, Is.Empty);
|
||||
Assert.That(unit.SubDomain, Is.Empty);
|
||||
Assert.That(unit.HasSubDomain, Is.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDomainUnit_OnlySeparators() {
|
||||
var unit = new DomainUnit("...", '.');
|
||||
Assert.That(unit.FullName, Is.EqualTo("..."));
|
||||
Assert.That(unit.TopDomain, Is.Empty);
|
||||
Assert.That(unit.SubDomain, Is.Empty);
|
||||
Assert.That(unit.HasSubDomain, Is.False);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ecc6823b62f94fd3a910f5a885a201dc
|
||||
timeCreated: 1606658361
|
@ -1,9 +1,10 @@
|
||||
using System.Collections;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode;
|
||||
using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Tests {
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class HashSetDependencyNodeTest {
|
||||
|
||||
[Test]
|
@ -1,12 +1,13 @@
|
||||
using System.Collections;
|
||||
using System.Linq;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode.Sort;
|
||||
using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Tests {
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class LinerSortStrategyTest {
|
||||
const float d = 10.0F;
|
||||
const float w = 10.0F;
|
@ -4,7 +4,7 @@ using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Tests {
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class NodeGridTest {
|
||||
|
||||
[Test]
|
@ -1,10 +1,11 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode;
|
||||
using NUnit.Framework;
|
||||
using UnityEngine;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Tests {
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class NodeIdTest {
|
||||
[Test]
|
||||
public void TestNodeIdValue() {
|
@ -1,10 +1,11 @@
|
||||
using System.Collections;
|
||||
using System.Linq;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode;
|
||||
using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Tests {
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class NodeProcessorTest {
|
||||
|
||||
[SetUp]
|
@ -2,8 +2,9 @@ using System.Collections;
|
||||
using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine.TestTools;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Tests {
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class NodeProfileTest {
|
||||
|
||||
[Test]
|
@ -1,6 +1,7 @@
|
||||
using System.Collections.Generic;
|
||||
using AsmdefHelper.DependencyGraph.Editor.DependencyNode;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Tests {
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
|
||||
public static class Ids {
|
||||
public static readonly NodeId _0 = new NodeId(0);
|
@ -6,7 +6,7 @@ using UnityEditor;
|
||||
using UnityEngine;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Tests {
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class RandomSortStrategyTest {
|
||||
const float d = 10.0F;
|
||||
const float w = 10.0F;
|
@ -5,7 +5,7 @@ using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.DependencyNode.Tests {
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class SquareValueProviderTest {
|
||||
|
||||
[Test]
|
@ -0,0 +1,48 @@
|
||||
using System.Collections;
|
||||
using System.Linq;
|
||||
using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class ToggleDictTest {
|
||||
|
||||
[Test]
|
||||
public void TestScanUpdate() {
|
||||
var dict = new ToggleDict();
|
||||
var toggle0 = new ToggleMock { IsOn = false };
|
||||
var toggle1 = new ToggleMock { IsOn = false };
|
||||
dict.Add("key0", toggle0);
|
||||
dict.Add("key1", toggle1);
|
||||
toggle0.IsOn = true;
|
||||
|
||||
// toggleの更新が取得できるか
|
||||
var updated = dict.ScanUpdate().ToArray();
|
||||
Assert.That(updated.Length, Is.EqualTo(1));
|
||||
var (key0, val0) = updated[0];
|
||||
Assert.That(key0, Is.EqualTo("key0"));
|
||||
Assert.That(val0, Is.True);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestTryGetToggle() {
|
||||
var dict = new ToggleDict();
|
||||
var toggle0 = new ToggleMock { IsOn = false };
|
||||
var toggle1 = new ToggleMock { IsOn = false };
|
||||
dict.Add("key0", toggle0);
|
||||
dict.Add("key1", toggle1);
|
||||
|
||||
var ret = dict.TryGetToggle("key0", out var getToggle);
|
||||
Assert.That(ret, Is.True);
|
||||
Assert.That(getToggle, Is.EqualTo(toggle0));
|
||||
ret = dict.TryGetToggle("key1", out getToggle);
|
||||
Assert.That(ret, Is.True);
|
||||
Assert.That(getToggle, Is.EqualTo(toggle1));
|
||||
|
||||
dict.Clear();
|
||||
ret = dict.TryGetToggle("key0", out getToggle);
|
||||
Assert.That(ret, Is.False);
|
||||
Assert.That(getToggle, Is.Null);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d5e4669ffa314d21bd51796c7ee890f4
|
||||
timeCreated: 1606750547
|
@ -0,0 +1,25 @@
|
||||
using System.Collections;
|
||||
using NUnit.Framework;
|
||||
using UnityEditor;
|
||||
using UnityEngine.TestTools;
|
||||
|
||||
namespace AsmdefHelper.DependencyGraph.Editor.Tests {
|
||||
public class ToggleGroupTest {
|
||||
[Test]
|
||||
public void TestToggleGroup() {
|
||||
var toggle0 = new ToggleMock();
|
||||
var toggle1 = new ToggleMock();
|
||||
var toggle2 = new ToggleMock();
|
||||
var toggleGroup = new ToggleGroup(toggle0, new[] { toggle1, toggle2 });
|
||||
|
||||
toggleGroup.IsOn = true;
|
||||
toggle0.IsOn = true;
|
||||
Assert.That(toggle1.IsOn, Is.True);
|
||||
Assert.That(toggle2.IsOn, Is.True);
|
||||
}
|
||||
}
|
||||
public class ToggleMock : IToggle {
|
||||
public bool IsOn { set; get; }
|
||||
public string Name { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 70c75ed559ab47378f605fbf1b75c85f
|
||||
timeCreated: 1606747443
|
@ -1,361 +0,0 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
OcclusionCullingSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: 0.25
|
||||
backfaceThreshold: 100
|
||||
m_SceneGUID: 00000000000000000000000000000000
|
||||
m_OcclusionCullingData: {fileID: 0}
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 9
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: 0.01
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
|
||||
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
|
||||
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: 0.5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 705507994}
|
||||
m_IndirectSpecularColor: {r: 0.44657898, g: 0.4964133, b: 0.5748178, a: 1}
|
||||
m_UseRadianceAmbientProbe: 0
|
||||
--- !u!157 &3
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 12
|
||||
m_GIWorkflowMode: 0
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 0
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 12
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_AtlasSize: 1024
|
||||
m_AO: 0
|
||||
m_AOMaxDistance: 1
|
||||
m_CompAOExponent: 1
|
||||
m_CompAOExponentDirect: 0
|
||||
m_ExtractAmbientOcclusion: 0
|
||||
m_Padding: 2
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_LightmapsBakeMode: 1
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherFiltering: 1
|
||||
m_FinalGatherRayCount: 256
|
||||
m_ReflectionCompression: 2
|
||||
m_MixedBakeMode: 2
|
||||
m_BakeBackend: 1
|
||||
m_PVRSampling: 1
|
||||
m_PVRDirectSampleCount: 32
|
||||
m_PVRSampleCount: 500
|
||||
m_PVRBounces: 2
|
||||
m_PVREnvironmentSampleCount: 500
|
||||
m_PVREnvironmentReferencePointCount: 2048
|
||||
m_PVRFilteringMode: 2
|
||||
m_PVRDenoiserTypeDirect: 0
|
||||
m_PVRDenoiserTypeIndirect: 0
|
||||
m_PVRDenoiserTypeAO: 0
|
||||
m_PVRFilterTypeDirect: 0
|
||||
m_PVRFilterTypeIndirect: 0
|
||||
m_PVRFilterTypeAO: 0
|
||||
m_PVREnvironmentMIS: 0
|
||||
m_PVRCulling: 1
|
||||
m_PVRFilteringGaussRadiusDirect: 1
|
||||
m_PVRFilteringGaussRadiusIndirect: 5
|
||||
m_PVRFilteringGaussRadiusAO: 2
|
||||
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
|
||||
m_PVRFilteringAtrousPositionSigmaIndirect: 2
|
||||
m_PVRFilteringAtrousPositionSigmaAO: 1
|
||||
m_ExportTrainingData: 0
|
||||
m_TrainingDataDestination: TrainingData
|
||||
m_LightProbeSampleCountMultiplier: 4
|
||||
m_LightingDataAsset: {fileID: 0}
|
||||
m_LightingSettings: {fileID: 1490641308}
|
||||
--- !u!196 &4
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentTypeID: 0
|
||||
agentRadius: 0.5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: 0.4
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
minRegionArea: 2
|
||||
manualCellSize: 0
|
||||
cellSize: 0.16666667
|
||||
manualTileSize: 0
|
||||
tileSize: 256
|
||||
accuratePlacement: 0
|
||||
maxJobWorkers: 0
|
||||
preserveTilesOutsideBounds: 0
|
||||
debug:
|
||||
m_Flags: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &705507993
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 705507995}
|
||||
- component: {fileID: 705507994}
|
||||
m_Layer: 0
|
||||
m_Name: Directional Light
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!108 &705507994
|
||||
Light:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 705507993}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 10
|
||||
m_Type: 1
|
||||
m_Shape: 0
|
||||
m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
|
||||
m_Intensity: 1
|
||||
m_Range: 10
|
||||
m_SpotAngle: 30
|
||||
m_InnerSpotAngle: 21.80208
|
||||
m_CookieSize: 10
|
||||
m_Shadows:
|
||||
m_Type: 2
|
||||
m_Resolution: -1
|
||||
m_CustomResolution: -1
|
||||
m_Strength: 1
|
||||
m_Bias: 0.05
|
||||
m_NormalBias: 0.4
|
||||
m_NearPlane: 0.2
|
||||
m_CullingMatrixOverride:
|
||||
e00: 1
|
||||
e01: 0
|
||||
e02: 0
|
||||
e03: 0
|
||||
e10: 0
|
||||
e11: 1
|
||||
e12: 0
|
||||
e13: 0
|
||||
e20: 0
|
||||
e21: 0
|
||||
e22: 1
|
||||
e23: 0
|
||||
e30: 0
|
||||
e31: 0
|
||||
e32: 0
|
||||
e33: 1
|
||||
m_UseCullingMatrixOverride: 0
|
||||
m_Cookie: {fileID: 0}
|
||||
m_DrawHalo: 0
|
||||
m_Flare: {fileID: 0}
|
||||
m_RenderMode: 0
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingLayerMask: 1
|
||||
m_Lightmapping: 1
|
||||
m_LightShadowCasterMode: 0
|
||||
m_AreaSize: {x: 1, y: 1}
|
||||
m_BounceIntensity: 1
|
||||
m_ColorTemperature: 6570
|
||||
m_UseColorTemperature: 0
|
||||
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_UseBoundingSphereOverride: 0
|
||||
m_ShadowRadius: 0
|
||||
m_ShadowAngle: 0
|
||||
--- !u!4 &705507995
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 705507993}
|
||||
m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
|
||||
m_LocalPosition: {x: 0, y: 3, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
|
||||
--- !u!1 &963194225
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 963194228}
|
||||
- component: {fileID: 963194227}
|
||||
- component: {fileID: 963194226}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &963194226
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 963194225}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &963194227
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 963194225}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 1
|
||||
m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
|
||||
m_projectionMatrixMode: 1
|
||||
m_GateFitMode: 2
|
||||
m_FOVAxisMode: 0
|
||||
m_SensorSize: {x: 36, y: 24}
|
||||
m_LensShift: {x: 0, y: 0}
|
||||
m_FocalLength: 50
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: 0.3
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 1
|
||||
m_AllowMSAA: 1
|
||||
m_AllowDynamicResolution: 0
|
||||
m_ForceIntoRT: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: 0.022
|
||||
--- !u!4 &963194228
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 963194225}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!850595691 &1490641308
|
||||
LightingSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Settings.lighting
|
||||
serializedVersion: 2
|
||||
m_GIWorkflowMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 0
|
||||
m_RealtimeEnvironmentLighting: 1
|
||||
m_BounceScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_UsingShadowmask: 1
|
||||
m_BakeBackend: 1
|
||||
m_LightmapMaxSize: 1024
|
||||
m_BakeResolution: 40
|
||||
m_Padding: 2
|
||||
m_TextureCompression: 1
|
||||
m_AO: 0
|
||||
m_AOMaxDistance: 1
|
||||
m_CompAOExponent: 1
|
||||
m_CompAOExponentDirect: 0
|
||||
m_ExtractAO: 0
|
||||
m_MixedBakeMode: 2
|
||||
m_LightmapsBakeMode: 1
|
||||
m_FilterMode: 1
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_ExportTrainingData: 0
|
||||
m_TrainingDataDestination: TrainingData
|
||||
m_RealtimeResolution: 2
|
||||
m_ForceWhiteAlbedo: 0
|
||||
m_ForceUpdates: 0
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherRayCount: 256
|
||||
m_FinalGatherFiltering: 1
|
||||
m_PVRCulling: 1
|
||||
m_PVRSampling: 1
|
||||
m_PVRDirectSampleCount: 32
|
||||
m_PVRSampleCount: 500
|
||||
m_PVREnvironmentSampleCount: 500
|
||||
m_PVREnvironmentReferencePointCount: 2048
|
||||
m_LightProbeSampleCountMultiplier: 4
|
||||
m_PVRBounces: 2
|
||||
m_PVRRussianRouletteStartBounce: 2
|
||||
m_PVREnvironmentMIS: 0
|
||||
m_PVRFilteringMode: 2
|
||||
m_PVRDenoiserTypeDirect: 0
|
||||
m_PVRDenoiserTypeIndirect: 0
|
||||
m_PVRDenoiserTypeAO: 0
|
||||
m_PVRFilterTypeDirect: 0
|
||||
m_PVRFilterTypeIndirect: 0
|
||||
m_PVRFilterTypeAO: 0
|
||||
m_PVRFilteringGaussRadiusDirect: 1
|
||||
m_PVRFilteringGaussRadiusIndirect: 5
|
||||
m_PVRFilteringGaussRadiusAO: 2
|
||||
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
|
||||
m_PVRFilteringAtrousPositionSigmaIndirect: 2
|
||||
m_PVRFilteringAtrousPositionSigmaAO: 1
|
@ -1,7 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9fc0d4010bbf28b4594072e72b8655ab
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3343c43624a31f447a1961156a2cac6e
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 07e92c78d576a8a458ce4a298eeb512d
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "AsmdefHelper.SyncSolution.Editor",
|
||||
"references": [
|
||||
"GUID:211243abc45174c45b3a6c275ea126b9"
|
||||
],
|
||||
"includePlatforms": [
|
||||
"Editor"
|
||||
],
|
||||
"excludePlatforms": [],
|
||||
"allowUnsafeCode": false,
|
||||
"overrideReferences": false,
|
||||
"precompiledReferences": [],
|
||||
"autoReferenced": true,
|
||||
"defineConstraints": [],
|
||||
"versionDefines": [],
|
||||
"noEngineReferences": false
|
||||
}
|
@ -1,7 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: dcfd308825181f346bc76cac8ae79330
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1,57 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using AsmdefHelper.UnityInternal;
|
||||
|
||||
// https://forum.unity.com/threads/solved-unity-not-generating-sln-file-from-assets-open-c-project.538487/
|
||||
// Thank you Flexford!
|
||||
namespace AsmdefHelper.SyncSolution.Editor {
|
||||
public static class SyncSolutionUtilities {
|
||||
|
||||
[MenuItem("AsmdefHelper/Sync C# Solution", priority = 3000)]
|
||||
public static void Sync() {
|
||||
Sync(true);
|
||||
}
|
||||
|
||||
static void Sync(bool logsEnabled) {
|
||||
CleanOldFiles(logsEnabled);
|
||||
Call_SyncSolution(logsEnabled);
|
||||
Call_SynchronizerSync(logsEnabled);
|
||||
}
|
||||
|
||||
static void CleanOldFiles(bool logsEnabled) {
|
||||
var assetsDirectoryInfo = new DirectoryInfo(Application.dataPath);
|
||||
var projectDirectoryInfo = assetsDirectoryInfo.Parent;
|
||||
|
||||
var files = GetFilesByExtensions(projectDirectoryInfo, "*.sln", "*.csproj");
|
||||
foreach (var file in files) {
|
||||
if (logsEnabled) {
|
||||
Debug.Log($"Remove old solution file: {file.Name}");
|
||||
}
|
||||
file.Delete();
|
||||
}
|
||||
}
|
||||
|
||||
static void Call_SyncSolution(bool logsEnabled) {
|
||||
if (logsEnabled) {
|
||||
Debug.Log($"Coll method: SyncVS.Sync()");
|
||||
}
|
||||
SolutionSynchronizerWrapper.SyncSolution();
|
||||
}
|
||||
|
||||
static void Call_SynchronizerSync(bool logsEnabled) {
|
||||
if (logsEnabled) {
|
||||
Debug.Log($"Coll method: SyncVS.Synchronizer.Sync()");
|
||||
}
|
||||
SolutionSynchronizerWrapper.SynchronizerSync();
|
||||
}
|
||||
|
||||
static IEnumerable<FileInfo> GetFilesByExtensions(DirectoryInfo dir, params string[] extensions) {
|
||||
extensions = extensions ?? new[] { "*" };
|
||||
var files = Enumerable.Empty<FileInfo>();
|
||||
return extensions.Aggregate(files, (current, ext) => current.Concat(dir.GetFiles(ext)));
|
||||
}
|
||||
}
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e5785f4c5d9ed634799d54e96aabf408
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1,5 +1,5 @@
|
||||
using UnityEditor;
|
||||
using UnityEditor.Experimental.AssetImporters;
|
||||
|
||||
|
||||
namespace AsmdefHelper.UnityInternal {
|
||||
public class InspectorWindowWrapper : EditorWindow{
|
||||
@ -17,7 +17,11 @@ namespace AsmdefHelper.UnityInternal {
|
||||
|
||||
public void AllApply() {
|
||||
foreach (var editor in inspectorWindow.tracker.activeEditors) {
|
||||
var assetImporterEditor = editor as AssetImporterEditor;
|
||||
#if UNITY_2021_1_OR_NEWER
|
||||
var assetImporterEditor = editor as UnityEditor.AssetImporters.AssetImporterEditor;
|
||||
#else
|
||||
var assetImporterEditor = editor as UnityEditor.Experimental.AssetImporters.AssetImporterEditor;
|
||||
#endif
|
||||
|
||||
if (assetImporterEditor != null && assetImporterEditor.HasModified()) {
|
||||
assetImporterEditor.ApplyAndImport();
|
||||
|
@ -1,22 +0,0 @@
|
||||
using UnityEditor;
|
||||
using UnityEditor.VisualStudioIntegration;
|
||||
|
||||
namespace AsmdefHelper.UnityInternal {
|
||||
public static class SolutionSynchronizerWrapper {
|
||||
|
||||
static readonly SolutionSynchronizer synchronizer;
|
||||
|
||||
static SolutionSynchronizerWrapper() {
|
||||
synchronizer = SyncVS.Synchronizer;
|
||||
}
|
||||
|
||||
public static void SyncSolution() {
|
||||
SyncVS.SyncSolution();
|
||||
}
|
||||
|
||||
|
||||
public static void SynchronizerSync() {
|
||||
synchronizer?.Sync();
|
||||
}
|
||||
}
|
||||
}
|
@ -1,3 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: aeb995b6396143f58028eb4aa639c7c4
|
||||
timeCreated: 1586952223
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "dev.n5y.asmdefhelper",
|
||||
"displayName": "AsmdefHelper",
|
||||
"version": "0.3.0",
|
||||
"version": "0.5.3",
|
||||
"unity": "2019.3",
|
||||
"description": "Unity assembly definition utilities.",
|
||||
"keywords": ["asmdef", "editor"],
|
||||
|
@ -1,8 +1,8 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"com.unity.ide.rider": "1.2.1",
|
||||
"com.unity.ide.visualstudio": "2.0.2",
|
||||
"com.unity.test-framework": "1.1.16",
|
||||
"com.unity.ide.rider": "3.0.9",
|
||||
"com.unity.ide.visualstudio": "2.0.12",
|
||||
"com.unity.test-framework": "1.1.29",
|
||||
"com.unity.modules.ai": "1.0.0",
|
||||
"com.unity.modules.androidjni": "1.0.0",
|
||||
"com.unity.modules.animation": "1.0.0",
|
||||
|
@ -1,34 +1,36 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"com.unity.ext.nunit": {
|
||||
"version": "1.0.0",
|
||||
"version": "1.0.6",
|
||||
"depth": 1,
|
||||
"source": "registry",
|
||||
"dependencies": {},
|
||||
"url": "https://packages.unity.com"
|
||||
},
|
||||
"com.unity.ide.rider": {
|
||||
"version": "1.2.1",
|
||||
"version": "3.0.9",
|
||||
"depth": 0,
|
||||
"source": "registry",
|
||||
"dependencies": {
|
||||
"com.unity.test-framework": "1.1.1"
|
||||
"com.unity.ext.nunit": "1.0.6"
|
||||
},
|
||||
"url": "https://packages.unity.com"
|
||||
},
|
||||
"com.unity.ide.visualstudio": {
|
||||
"version": "2.0.2",
|
||||
"depth": 0,
|
||||
"source": "registry",
|
||||
"dependencies": {},
|
||||
"url": "https://packages.unity.com"
|
||||
},
|
||||
"com.unity.test-framework": {
|
||||
"version": "1.1.16",
|
||||
"version": "2.0.12",
|
||||
"depth": 0,
|
||||
"source": "registry",
|
||||
"dependencies": {
|
||||
"com.unity.ext.nunit": "1.0.0",
|
||||
"com.unity.test-framework": "1.1.9"
|
||||
},
|
||||
"url": "https://packages.unity.com"
|
||||
},
|
||||
"com.unity.test-framework": {
|
||||
"version": "1.1.29",
|
||||
"depth": 0,
|
||||
"source": "registry",
|
||||
"dependencies": {
|
||||
"com.unity.ext.nunit": "1.0.6",
|
||||
"com.unity.modules.imgui": "1.0.0",
|
||||
"com.unity.modules.jsonserialize": "1.0.0"
|
||||
},
|
||||
|
35
ProjectSettings/MemorySettings.asset
Normal file
35
ProjectSettings/MemorySettings.asset
Normal file
@ -0,0 +1,35 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!387306366 &1
|
||||
MemorySettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_EditorMemorySettings:
|
||||
m_MainAllocatorBlockSize: -1
|
||||
m_ThreadAllocatorBlockSize: -1
|
||||
m_MainGfxBlockSize: -1
|
||||
m_ThreadGfxBlockSize: -1
|
||||
m_CacheBlockSize: -1
|
||||
m_TypetreeBlockSize: -1
|
||||
m_ProfilerBlockSize: -1
|
||||
m_ProfilerEditorBlockSize: -1
|
||||
m_BucketAllocatorGranularity: -1
|
||||
m_BucketAllocatorBucketsCount: -1
|
||||
m_BucketAllocatorBlockSize: -1
|
||||
m_BucketAllocatorBlockCount: -1
|
||||
m_ProfilerBucketAllocatorGranularity: -1
|
||||
m_ProfilerBucketAllocatorBucketsCount: -1
|
||||
m_ProfilerBucketAllocatorBlockSize: -1
|
||||
m_ProfilerBucketAllocatorBlockCount: -1
|
||||
m_TempAllocatorSizeMain: -1
|
||||
m_JobTempAllocatorBlockSize: -1
|
||||
m_BackgroundJobTempAllocatorBlockSize: -1
|
||||
m_JobTempAllocatorReducedBlockSize: -1
|
||||
m_TempAllocatorSizeGIBakingWorker: -1
|
||||
m_TempAllocatorSizeNavMeshWorker: -1
|
||||
m_TempAllocatorSizeAudioWorker: -1
|
||||
m_TempAllocatorSizeCloudWorker: -1
|
||||
m_TempAllocatorSizeGfx: -1
|
||||
m_TempAllocatorSizeJobWorker: -1
|
||||
m_TempAllocatorSizeBackgroundWorker: -1
|
||||
m_TempAllocatorSizePreloadManager: -1
|
||||
m_PlatformMemorySettings: {}
|
@ -1,2 +1,2 @@
|
||||
m_EditorVersion: 2020.1.6f1
|
||||
m_EditorVersionWithRevision: 2020.1.6f1 (fc477ca6df10)
|
||||
m_EditorVersion: 2021.2.8f1
|
||||
m_EditorVersionWithRevision: 2021.2.8f1 (d0e5f0a7b06a)
|
||||
|
0
ProjectSettings/boot.config
Normal file
0
ProjectSettings/boot.config
Normal file
22
README.md
22
README.md
@ -6,6 +6,13 @@ Unity assembly definition utilities.
|
||||
|
||||
This library solve inconvenience of assembly definition on unity.
|
||||
|
||||
### install via upm
|
||||
Please add this line to `dependencies` of `Packages/manifest.json`.
|
||||
|
||||
```
|
||||
"dev.n5y.asmdefhelper": "https://git.roseapollo.com/rose/AsmdefHelper.git?path=Assets"
|
||||
```
|
||||
|
||||
## Dependency Graph
|
||||
|
||||
Unity assembly definition viewer.
|
||||
@ -14,10 +21,12 @@ Unity assembly definition viewer.
|
||||
|
||||
Show assembly definition referances in your project like this.
|
||||
|
||||
<img src="https://user-images.githubusercontent.com/15327448/79340184-e8f44080-7f64-11ea-87f9-3ec90f9c5fa5.png" width="450" />
|
||||
<img src="https://user-images.githubusercontent.com/15327448/100633752-cdae3800-3371-11eb-9729-dfb8c4fd3412.png" width="580" />
|
||||
|
||||
You need to organize the nodes by yourself.
|
||||
|
||||
You can toggle node appear/disappear.
|
||||
|
||||
## Multiple Edit
|
||||
|
||||
Open multiple assembly definition inspector views for parallel editing.
|
||||
@ -30,15 +39,6 @@ Open multiple assembly definition inspector views for parallel editing.
|
||||
|
||||
<img src="https://user-images.githubusercontent.com/15327448/79342775-813ff480-7f68-11ea-851d-3e93b5948c0b.gif" width="450" />
|
||||
|
||||
## Sync Solution
|
||||
|
||||
Refresh .sln/.csproj in your project.
|
||||
|
||||
(menu) > [AsmdefHelper] > [Sync C# Solution]
|
||||
|
||||
I referred to this: [[SOLVED] Unity not generating .sln file from Assets > Open C# Project
|
||||
](https://forum.unity.com/threads/solved-unity-not-generating-sln-file-from-assets-open-c-project.538487/)
|
||||
|
||||
## Compile Locker
|
||||
|
||||
Lock unity editor compile to edit an asmdef.
|
||||
@ -70,7 +70,7 @@ And you can also rename an asmdef by one action.
|
||||
___
|
||||
|
||||
## Environment
|
||||
Unity 2020.1.6f1
|
||||
Unity 2021.2.8f1
|
||||
|
||||
This library use unity internal class, so may be not work (or couse build error) depending your unity vresion.
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.UIElements.Debugger" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Experimental.GraphView" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
|
||||
<xs:import schemaLocation="UnityEditor.PackageManager.UI.xsd" namespace="UnityEditor.PackageManager.UI" />
|
||||
<xs:import schemaLocation="UnityEditor.UIElements.xsd" namespace="UnityEditor.UIElements" />
|
||||
<xs:import schemaLocation="UnityEditor.UIElements.Debugger.xsd" namespace="UnityEditor.UIElements.Debugger" />
|
||||
<xs:import schemaLocation="UnityEditor.Experimental.GraphView.xsd" namespace="UnityEditor.Experimental.GraphView" />
|
||||
</xs:schema>
|
66
UIElementsSchema/UnityEditor.Experimental.GraphView.xsd
Normal file
66
UIElementsSchema/UnityEditor.Experimental.GraphView.xsd
Normal file
@ -0,0 +1,66 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Experimental.GraphView" elementFormDefault="qualified" targetNamespace="UnityEditor.Experimental.GraphView" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
|
||||
<xs:complexType name="PillType">
|
||||
<xs:complexContent mixed="false">
|
||||
<xs:restriction base="engine:VisualElementType">
|
||||
<xs:attribute default="" name="name" type="xs:string" use="optional" />
|
||||
<xs:attribute default="" name="view-data-key" type="xs:string" use="optional" />
|
||||
<xs:attribute default="Position" name="picking-mode" type="engine:VisualElement_picking-mode_Type" use="optional" />
|
||||
<xs:attribute default="" name="tooltip" type="xs:string" use="optional" />
|
||||
<xs:attribute default="None" name="usage-hints" type="engine:VisualElement_usage-hints_Type" use="optional" />
|
||||
<xs:attribute default="0" name="tabindex" type="xs:int" use="optional" />
|
||||
<xs:attribute default="false" name="focusable" type="xs:boolean" use="optional" />
|
||||
<xs:attribute default="" name="class" type="xs:string" use="optional" />
|
||||
<xs:attribute default="" name="content-container" type="xs:string" use="optional" />
|
||||
<xs:attribute default="" name="style" type="xs:string" use="optional" />
|
||||
<xs:attribute default="false" name="highlighted" type="xs:boolean" use="optional" />
|
||||
<xs:attribute default="" name="text" type="xs:string" use="optional" />
|
||||
<xs:anyAttribute processContents="lax" />
|
||||
</xs:restriction>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
<xs:element name="Pill" substitutionGroup="engine:VisualElement" type="PillType" />
|
||||
<xs:complexType name="ResizableElementType">
|
||||
<xs:complexContent mixed="false">
|
||||
<xs:restriction base="engine:VisualElementType">
|
||||
<xs:sequence minOccurs="0" maxOccurs="unbounded">
|
||||
<xs:element ref="engine:VisualElement" />
|
||||
</xs:sequence>
|
||||
<xs:attribute default="" name="name" type="xs:string" use="optional" />
|
||||
<xs:attribute default="" name="view-data-key" type="xs:string" use="optional" />
|
||||
<xs:attribute default="Position" name="picking-mode" type="engine:VisualElement_picking-mode_Type" use="optional" />
|
||||
<xs:attribute default="" name="tooltip" type="xs:string" use="optional" />
|
||||
<xs:attribute default="None" name="usage-hints" type="engine:VisualElement_usage-hints_Type" use="optional" />
|
||||
<xs:attribute default="0" name="tabindex" type="xs:int" use="optional" />
|
||||
<xs:attribute default="false" name="focusable" type="xs:boolean" use="optional" />
|
||||
<xs:attribute default="" name="class" type="xs:string" use="optional" />
|
||||
<xs:attribute default="" name="content-container" type="xs:string" use="optional" />
|
||||
<xs:attribute default="" name="style" type="xs:string" use="optional" />
|
||||
<xs:anyAttribute processContents="lax" />
|
||||
</xs:restriction>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
<xs:element name="ResizableElement" substitutionGroup="engine:VisualElement" type="ResizableElementType" />
|
||||
<xs:complexType name="StickyNoteType">
|
||||
<xs:complexContent mixed="false">
|
||||
<xs:restriction base="engine:VisualElementType">
|
||||
<xs:sequence minOccurs="0" maxOccurs="unbounded">
|
||||
<xs:element ref="engine:VisualElement" />
|
||||
</xs:sequence>
|
||||
<xs:attribute default="" name="name" type="xs:string" use="optional" />
|
||||
<xs:attribute default="" name="view-data-key" type="xs:string" use="optional" />
|
||||
<xs:attribute default="Position" name="picking-mode" type="engine:VisualElement_picking-mode_Type" use="optional" />
|
||||
<xs:attribute default="" name="tooltip" type="xs:string" use="optional" />
|
||||
<xs:attribute default="None" name="usage-hints" type="engine:VisualElement_usage-hints_Type" use="optional" />
|
||||
<xs:attribute default="0" name="tabindex" type="xs:int" use="optional" />
|
||||
<xs:attribute default="false" name="focusable" type="xs:boolean" use="optional" />
|
||||
<xs:attribute default="" name="class" type="xs:string" use="optional" />
|
||||
<xs:attribute default="" name="content-container" type="xs:string" use="optional" />
|
||||
<xs:attribute default="" name="style" type="xs:string" use="optional" />
|
||||
<xs:anyAttribute processContents="lax" />
|
||||
</xs:restriction>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
<xs:element name="StickyNote" substitutionGroup="engine:VisualElement" type="StickyNoteType" />
|
||||
</xs:schema>
|
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.UIElements.Debugger" elementFormDefault="qualified" targetNamespace="UnityEditor.PackageManager.UI" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Experimental.GraphView" elementFormDefault="qualified" targetNamespace="UnityEditor.PackageManager.UI" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
|
||||
<xs:complexType name="AlertType">
|
||||
<xs:complexContent mixed="false">
|
||||
|
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.UIElements.Debugger" elementFormDefault="qualified" targetNamespace="UnityEditor.UIElements.Debugger" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Experimental.GraphView" elementFormDefault="qualified" targetNamespace="UnityEditor.UIElements.Debugger" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
|
||||
<xs:complexType name="EventTypeSelectFieldType">
|
||||
<xs:complexContent mixed="false">
|
||||
@ -23,5 +23,5 @@
|
||||
</xs:restriction>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
<xs:element name="EventTypeSelectField" substitutionGroup="engine:VisualElement" type="EventTypeSelectFieldType" />
|
||||
<xs:element name="EventTypeSelectField" substitutionGroup="engine:VisualElement" xmlns:q1="UnityEditor.UIElements.Debugger" type="q1:EventTypeSelectFieldType" />
|
||||
</xs:schema>
|
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.UIElements.Debugger" elementFormDefault="qualified" targetNamespace="UnityEditor.UIElements" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Experimental.GraphView" elementFormDefault="qualified" targetNamespace="UnityEditor.UIElements" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
|
||||
<xs:simpleType name="PropertyControl_value-type_Type">
|
||||
<xs:restriction base="xs:string">
|
||||
|
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.UIElements.Debugger" elementFormDefault="qualified" targetNamespace="UnityEngine.UIElements" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Experimental.GraphView" elementFormDefault="qualified" targetNamespace="UnityEngine.UIElements" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:complexType name="UXMLType">
|
||||
<xs:complexContent mixed="false">
|
||||
<xs:restriction base="xs:anyType">
|
||||
|
689
UserSettings/Layouts/default-2021.dwlt
Normal file
689
UserSettings/Layouts/default-2021.dwlt
Normal file
@ -0,0 +1,689 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &1
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_PixelRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 45
|
||||
width: 2560
|
||||
height: 1391
|
||||
m_ShowMode: 4
|
||||
m_Title:
|
||||
m_RootView: {fileID: 6}
|
||||
m_MinSize: {x: 950, y: 300}
|
||||
m_MaxSize: {x: 10000, y: 10000}
|
||||
--- !u!114 &2
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Children:
|
||||
- {fileID: 9}
|
||||
- {fileID: 3}
|
||||
m_Position:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 30
|
||||
width: 2560
|
||||
height: 1341
|
||||
m_MinSize: {x: 683, y: 492}
|
||||
m_MaxSize: {x: 14004, y: 14042}
|
||||
vertical: 0
|
||||
controlID: 615
|
||||
--- !u!114 &3
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Children: []
|
||||
m_Position:
|
||||
serializedVersion: 2
|
||||
x: 2041
|
||||
y: 0
|
||||
width: 519
|
||||
height: 1341
|
||||
m_MinSize: {x: 277, y: 71}
|
||||
m_MaxSize: {x: 4002, y: 4021}
|
||||
m_ActualView: {fileID: 14}
|
||||
m_Panes:
|
||||
- {fileID: 14}
|
||||
m_Selected: 0
|
||||
m_LastSelected: 0
|
||||
--- !u!114 &4
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Children: []
|
||||
m_Position:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 505
|
||||
height: 811
|
||||
m_MinSize: {x: 202, y: 221}
|
||||
m_MaxSize: {x: 4002, y: 4021}
|
||||
m_ActualView: {fileID: 15}
|
||||
m_Panes:
|
||||
- {fileID: 15}
|
||||
m_Selected: 0
|
||||
m_LastSelected: 0
|
||||
--- !u!114 &5
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Children: []
|
||||
m_Position:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 811
|
||||
width: 2041
|
||||
height: 530
|
||||
m_MinSize: {x: 232, y: 271}
|
||||
m_MaxSize: {x: 10002, y: 10021}
|
||||
m_ActualView: {fileID: 13}
|
||||
m_Panes:
|
||||
- {fileID: 13}
|
||||
- {fileID: 18}
|
||||
m_Selected: 0
|
||||
m_LastSelected: 0
|
||||
--- !u!114 &6
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Children:
|
||||
- {fileID: 7}
|
||||
- {fileID: 2}
|
||||
- {fileID: 8}
|
||||
m_Position:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 2560
|
||||
height: 1391
|
||||
m_MinSize: {x: 950, y: 300}
|
||||
m_MaxSize: {x: 10000, y: 10000}
|
||||
--- !u!114 &7
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Children: []
|
||||
m_Position:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 2560
|
||||
height: 30
|
||||
m_MinSize: {x: 0, y: 0}
|
||||
m_MaxSize: {x: 0, y: 0}
|
||||
m_LastLoadedLayoutName: Default
|
||||
--- !u!114 &8
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Children: []
|
||||
m_Position:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 1371
|
||||
width: 2560
|
||||
height: 20
|
||||
m_MinSize: {x: 0, y: 0}
|
||||
m_MaxSize: {x: 0, y: 0}
|
||||
--- !u!114 &9
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Children:
|
||||
- {fileID: 10}
|
||||
- {fileID: 5}
|
||||
m_Position:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 2041
|
||||
height: 1341
|
||||
m_MinSize: {x: 406, y: 492}
|
||||
m_MaxSize: {x: 10002, y: 14042}
|
||||
vertical: 1
|
||||
controlID: 547
|
||||
--- !u!114 &10
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Children:
|
||||
- {fileID: 4}
|
||||
- {fileID: 11}
|
||||
m_Position:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 2041
|
||||
height: 811
|
||||
m_MinSize: {x: 406, y: 221}
|
||||
m_MaxSize: {x: 8006, y: 4021}
|
||||
vertical: 0
|
||||
controlID: 548
|
||||
--- !u!114 &11
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Children: []
|
||||
m_Position:
|
||||
serializedVersion: 2
|
||||
x: 505
|
||||
y: 0
|
||||
width: 1536
|
||||
height: 811
|
||||
m_MinSize: {x: 204, y: 221}
|
||||
m_MaxSize: {x: 4004, y: 4021}
|
||||
m_ActualView: {fileID: 16}
|
||||
m_Panes:
|
||||
- {fileID: 16}
|
||||
- {fileID: 17}
|
||||
- {fileID: 12}
|
||||
m_Selected: 0
|
||||
m_LastSelected: 1
|
||||
--- !u!114 &12
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12111, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_AutoRepaintOnSceneChange: 0
|
||||
m_MinSize: {x: 400, y: 100}
|
||||
m_MaxSize: {x: 2048, y: 2048}
|
||||
m_TitleContent:
|
||||
m_Text: Asset Store
|
||||
m_Image: {fileID: 357073275683767465, guid: 0000000000000000d000000000000000,
|
||||
type: 0}
|
||||
m_Tooltip:
|
||||
m_DepthBufferBits: 0
|
||||
m_Pos:
|
||||
serializedVersion: 2
|
||||
x: 468
|
||||
y: 181
|
||||
width: 973
|
||||
height: 501
|
||||
--- !u!114 &13
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_AutoRepaintOnSceneChange: 0
|
||||
m_MinSize: {x: 230, y: 250}
|
||||
m_MaxSize: {x: 10000, y: 10000}
|
||||
m_TitleContent:
|
||||
m_Text: Project
|
||||
m_Image: {fileID: -7501376956915960154, guid: 0000000000000000d000000000000000,
|
||||
type: 0}
|
||||
m_Tooltip:
|
||||
m_DepthBufferBits: 0
|
||||
m_Pos:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 905
|
||||
width: 2039
|
||||
height: 509
|
||||
m_SearchFilter:
|
||||
m_NameFilter:
|
||||
m_ClassNames: []
|
||||
m_AssetLabels: []
|
||||
m_AssetBundleNames: []
|
||||
m_VersionControlStates: []
|
||||
m_ReferencingInstanceIDs:
|
||||
m_ScenePaths: []
|
||||
m_ShowAllHits: 0
|
||||
m_SearchArea: 0
|
||||
m_Folders:
|
||||
- Assets
|
||||
m_ViewMode: 1
|
||||
m_StartGridSize: 64
|
||||
m_LastFolders:
|
||||
- Assets
|
||||
m_LastFoldersGridSize: -1
|
||||
m_LastProjectPath: /Users/danielbrauer/Unity Projects/New Unity Project 20
|
||||
m_IsLocked: 0
|
||||
m_FolderTreeState:
|
||||
scrollPos: {x: 0, y: 0}
|
||||
m_SelectedIDs: b0230000
|
||||
m_LastClickedID: 9136
|
||||
m_ExpandedIDs: 00000000b023000000ca9a3bffffff7f
|
||||
m_RenameOverlay:
|
||||
m_UserAcceptedRename: 0
|
||||
m_Name:
|
||||
m_OriginalName:
|
||||
m_EditFieldRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 0
|
||||
height: 0
|
||||
m_UserData: 0
|
||||
m_IsWaitingForDelay: 0
|
||||
m_IsRenaming: 0
|
||||
m_OriginalEventType: 11
|
||||
m_IsRenamingFilename: 1
|
||||
m_ClientGUIView: {fileID: 0}
|
||||
m_CreateAssetUtility:
|
||||
m_EndAction: {fileID: 0}
|
||||
m_InstanceID: 0
|
||||
m_Path:
|
||||
m_Icon: {fileID: 0}
|
||||
m_ResourceFile:
|
||||
m_SearchString:
|
||||
m_ColumnWidths: []
|
||||
m_AssetTreeState:
|
||||
scrollPos: {x: 0, y: 0}
|
||||
m_SelectedIDs:
|
||||
m_LastClickedID: 0
|
||||
m_ExpandedIDs: 00000000b023000000ca9a3bffffff7f
|
||||
m_RenameOverlay:
|
||||
m_UserAcceptedRename: 0
|
||||
m_Name:
|
||||
m_OriginalName:
|
||||
m_EditFieldRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 0
|
||||
height: 0
|
||||
m_UserData: 0
|
||||
m_IsWaitingForDelay: 0
|
||||
m_IsRenaming: 0
|
||||
m_OriginalEventType: 11
|
||||
m_IsRenamingFilename: 1
|
||||
m_ClientGUIView: {fileID: 0}
|
||||
m_CreateAssetUtility:
|
||||
m_EndAction: {fileID: 0}
|
||||
m_InstanceID: 0
|
||||
m_Path:
|
||||
m_Icon: {fileID: 0}
|
||||
m_ResourceFile:
|
||||
m_SearchString:
|
||||
m_ColumnWidths: []
|
||||
m_ListAreaState:
|
||||
m_SelectedInstanceIDs:
|
||||
m_LastClickedInstanceID: 0
|
||||
m_HadKeyboardFocusLastEvent: 0
|
||||
m_ExpandedInstanceIDs: c6230000
|
||||
m_RenameOverlay:
|
||||
m_UserAcceptedRename: 0
|
||||
m_Name:
|
||||
m_OriginalName:
|
||||
m_EditFieldRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 0
|
||||
height: 0
|
||||
m_UserData: 0
|
||||
m_IsWaitingForDelay: 0
|
||||
m_IsRenaming: 0
|
||||
m_OriginalEventType: 11
|
||||
m_IsRenamingFilename: 1
|
||||
m_ClientGUIView: {fileID: 0}
|
||||
m_CreateAssetUtility:
|
||||
m_EndAction: {fileID: 0}
|
||||
m_InstanceID: 0
|
||||
m_Path:
|
||||
m_Icon: {fileID: 0}
|
||||
m_ResourceFile:
|
||||
m_NewAssetIndexInList: -1
|
||||
m_ScrollPosition: {x: 0, y: 0}
|
||||
m_GridSize: 64
|
||||
m_DirectoriesAreaWidth: 115
|
||||
--- !u!114 &14
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_AutoRepaintOnSceneChange: 0
|
||||
m_MinSize: {x: 275, y: 50}
|
||||
m_MaxSize: {x: 4000, y: 4000}
|
||||
m_TitleContent:
|
||||
m_Text: Inspector
|
||||
m_Image: {fileID: -6905738622615590433, guid: 0000000000000000d000000000000000,
|
||||
type: 0}
|
||||
m_Tooltip:
|
||||
m_DepthBufferBits: 0
|
||||
m_Pos:
|
||||
serializedVersion: 2
|
||||
x: 2043
|
||||
y: 94
|
||||
width: 517
|
||||
height: 1320
|
||||
m_ScrollPosition: {x: 0, y: 0}
|
||||
m_InspectorMode: 0
|
||||
m_PreviewResizer:
|
||||
m_CachedPref: 160
|
||||
m_ControlHash: -371814159
|
||||
m_PrefName: Preview_InspectorPreview
|
||||
m_PreviewWindow: {fileID: 0}
|
||||
--- !u!114 &15
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_AutoRepaintOnSceneChange: 0
|
||||
m_MinSize: {x: 200, y: 200}
|
||||
m_MaxSize: {x: 4000, y: 4000}
|
||||
m_TitleContent:
|
||||
m_Text: Hierarchy
|
||||
m_Image: {fileID: -590624980919486359, guid: 0000000000000000d000000000000000,
|
||||
type: 0}
|
||||
m_Tooltip:
|
||||
m_DepthBufferBits: 0
|
||||
m_Pos:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 94
|
||||
width: 503
|
||||
height: 790
|
||||
m_TreeViewState:
|
||||
scrollPos: {x: 0, y: 0}
|
||||
m_SelectedIDs:
|
||||
m_LastClickedID: 0
|
||||
m_ExpandedIDs: 00000000
|
||||
m_RenameOverlay:
|
||||
m_UserAcceptedRename: 0
|
||||
m_Name:
|
||||
m_OriginalName:
|
||||
m_EditFieldRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 0
|
||||
height: 0
|
||||
m_UserData: 0
|
||||
m_IsWaitingForDelay: 0
|
||||
m_IsRenaming: 0
|
||||
m_OriginalEventType: 11
|
||||
m_IsRenamingFilename: 0
|
||||
m_ClientGUIView: {fileID: 0}
|
||||
m_CreateAssetUtility:
|
||||
m_EndAction: {fileID: 0}
|
||||
m_InstanceID: 0
|
||||
m_Path:
|
||||
m_Icon: {fileID: 0}
|
||||
m_ResourceFile:
|
||||
m_SearchString:
|
||||
m_ColumnWidths: []
|
||||
m_ExpandedScenes: []
|
||||
m_CurrenRootInstanceID: 0
|
||||
m_Locked: 0
|
||||
m_CurrentSortingName: TransformSorting
|
||||
--- !u!114 &16
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_AutoRepaintOnSceneChange: 1
|
||||
m_MinSize: {x: 200, y: 200}
|
||||
m_MaxSize: {x: 4000, y: 4000}
|
||||
m_TitleContent:
|
||||
m_Text: Scene
|
||||
m_Image: {fileID: 2318424515335265636, guid: 0000000000000000d000000000000000,
|
||||
type: 0}
|
||||
m_Tooltip:
|
||||
m_DepthBufferBits: 32
|
||||
m_Pos:
|
||||
serializedVersion: 2
|
||||
x: 507
|
||||
y: 94
|
||||
width: 1532
|
||||
height: 790
|
||||
m_SceneLighting: 1
|
||||
lastFramingTime: 0
|
||||
m_2DMode: 0
|
||||
m_isRotationLocked: 0
|
||||
m_AudioPlay: 0
|
||||
m_Position:
|
||||
m_Target: {x: 0, y: 0, z: 0}
|
||||
speed: 2
|
||||
m_Value: {x: 0, y: 0, z: 0}
|
||||
m_RenderMode: 0
|
||||
m_SceneViewState:
|
||||
showFog: 1
|
||||
showMaterialUpdate: 0
|
||||
showSkybox: 1
|
||||
showFlares: 1
|
||||
showImageEffects: 1
|
||||
grid:
|
||||
xGrid:
|
||||
m_Target: 0
|
||||
speed: 2
|
||||
m_Value: 0
|
||||
yGrid:
|
||||
m_Target: 1
|
||||
speed: 2
|
||||
m_Value: 1
|
||||
zGrid:
|
||||
m_Target: 0
|
||||
speed: 2
|
||||
m_Value: 0
|
||||
m_Rotation:
|
||||
m_Target: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226}
|
||||
speed: 2
|
||||
m_Value: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226}
|
||||
m_Size:
|
||||
m_Target: 10
|
||||
speed: 2
|
||||
m_Value: 10
|
||||
m_Ortho:
|
||||
m_Target: 0
|
||||
speed: 2
|
||||
m_Value: 0
|
||||
m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_LastSceneViewOrtho: 0
|
||||
m_ReplacementShader: {fileID: 0}
|
||||
m_ReplacementString:
|
||||
m_LastLockedObject: {fileID: 0}
|
||||
m_ViewIsLockedToObject: 0
|
||||
--- !u!114 &17
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_AutoRepaintOnSceneChange: 1
|
||||
m_MinSize: {x: 200, y: 200}
|
||||
m_MaxSize: {x: 4000, y: 4000}
|
||||
m_TitleContent:
|
||||
m_Text: Game
|
||||
m_Image: {fileID: -2087823869225018852, guid: 0000000000000000d000000000000000,
|
||||
type: 0}
|
||||
m_Tooltip:
|
||||
m_DepthBufferBits: 32
|
||||
m_Pos:
|
||||
serializedVersion: 2
|
||||
x: 507
|
||||
y: 94
|
||||
width: 1532
|
||||
height: 790
|
||||
m_MaximizeOnPlay: 0
|
||||
m_Gizmos: 0
|
||||
m_Stats: 0
|
||||
m_SelectedSizes: 000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
m_TargetDisplay: 0
|
||||
m_ZoomArea:
|
||||
m_HRangeLocked: 0
|
||||
m_VRangeLocked: 0
|
||||
m_HBaseRangeMin: -383
|
||||
m_HBaseRangeMax: 383
|
||||
m_VBaseRangeMin: -193.25
|
||||
m_VBaseRangeMax: 193.25
|
||||
m_HAllowExceedBaseRangeMin: 1
|
||||
m_HAllowExceedBaseRangeMax: 1
|
||||
m_VAllowExceedBaseRangeMin: 1
|
||||
m_VAllowExceedBaseRangeMax: 1
|
||||
m_ScaleWithWindow: 0
|
||||
m_HSlider: 0
|
||||
m_VSlider: 0
|
||||
m_IgnoreScrollWheelUntilClicked: 0
|
||||
m_EnableMouseInput: 1
|
||||
m_EnableSliderZoom: 0
|
||||
m_UniformScale: 1
|
||||
m_UpDirection: 1
|
||||
m_DrawArea:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 17
|
||||
width: 1532
|
||||
height: 773
|
||||
m_Scale: {x: 2, y: 2}
|
||||
m_Translation: {x: 766, y: 386.5}
|
||||
m_MarginLeft: 0
|
||||
m_MarginRight: 0
|
||||
m_MarginTop: 0
|
||||
m_MarginBottom: 0
|
||||
m_LastShownAreaInsideMargins:
|
||||
serializedVersion: 2
|
||||
x: -383
|
||||
y: -193.25
|
||||
width: 766
|
||||
height: 386.5
|
||||
m_MinimalGUI: 1
|
||||
m_defaultScale: 2
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_CurrentColorSpace: 1
|
||||
m_LastWindowPixelSize: {x: 3064, y: 1580}
|
||||
m_ClearInEditMode: 1
|
||||
m_NoCameraWarning: 1
|
||||
--- !u!114 &18
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 52
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 1
|
||||
m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_AutoRepaintOnSceneChange: 0
|
||||
m_MinSize: {x: 100, y: 100}
|
||||
m_MaxSize: {x: 4000, y: 4000}
|
||||
m_TitleContent:
|
||||
m_Text: Console
|
||||
m_Image: {fileID: 111653112392082826, guid: 0000000000000000d000000000000000,
|
||||
type: 0}
|
||||
m_Tooltip:
|
||||
m_DepthBufferBits: 0
|
||||
m_Pos:
|
||||
serializedVersion: 2
|
||||
x: 8
|
||||
y: 718
|
||||
width: 1366
|
||||
height: 308
|
Loading…
x
Reference in New Issue
Block a user