├── ProjectSettings
├── ProjectVersion.txt
├── ClusterInputManager.asset
├── NetworkManager.asset
├── EditorBuildSettings.asset
├── XRSettings.asset
├── TimeManager.asset
├── VFXManager.asset
├── AudioManager.asset
├── TagManager.asset
├── EditorSettings.asset
├── PresetManager.asset
├── UnityConnectSettings.asset
├── DynamicsManager.asset
├── Physics2DSettings.asset
├── NavMeshAreas.asset
├── GraphicsSettings.asset
├── QualitySettings.asset
├── InputManager.asset
└── ProjectSettings.asset
├── Assets
├── Mochineko
│ ├── SimpleReorderableListSamples
│ │ ├── Notice.txt
│ │ ├── Notice.txt.meta
│ │ ├── SampleScene.unity.meta
│ │ ├── DropDown.meta
│ │ ├── FullyFixed.meta
│ │ ├── MultiProperty.meta
│ │ ├── DropDown
│ │ │ ├── Editor.meta
│ │ │ ├── DropDownSample.cs.meta
│ │ │ ├── Editor
│ │ │ │ ├── DropDownSampleEditor.cs.meta
│ │ │ │ └── DropDownSampleEditor.cs
│ │ │ └── DropDownSample.cs
│ │ ├── EditorUtilities.meta
│ │ ├── FixedElementCount.meta
│ │ ├── FullyFixed
│ │ │ ├── Editor.meta
│ │ │ ├── FullyFixedSample.cs.meta
│ │ │ ├── Editor
│ │ │ │ ├── FullyFixedSampleEditor.cs.meta
│ │ │ │ └── FullyFixedSampleEditor.cs
│ │ │ └── FullyFixedSample.cs
│ │ ├── SingleProperty.meta
│ │ ├── MultiProperty
│ │ │ ├── Editor.meta
│ │ │ ├── MultiPropertySample.cs.meta
│ │ │ ├── Editor
│ │ │ │ ├── MultiPropertySampleEditor.cs.meta
│ │ │ │ └── MultiPropertySampleEditor.cs
│ │ │ └── MultiPropertySample.cs
│ │ ├── NestedMultiProperty.meta
│ │ ├── SingleProperty
│ │ │ ├── Editor.meta
│ │ │ ├── SinglePropertySample.cs.meta
│ │ │ ├── SinglePropertySample.cs
│ │ │ └── Editor
│ │ │ │ ├── SinglePropertySampleEditor.cs.meta
│ │ │ │ └── SinglePropertySampleEditor.cs
│ │ ├── FixedElementCount
│ │ │ ├── Editor.meta
│ │ │ ├── FixedElementCountSample.cs.meta
│ │ │ ├── Editor
│ │ │ │ ├── FixedElementCountSampleEditor.cs.meta
│ │ │ │ └── FixedElementCountSampleEditor.cs
│ │ │ └── FixedElementCountSample.cs
│ │ ├── NestedMultiProperty
│ │ │ ├── Editor.meta
│ │ │ ├── NestedMultiPropertySample.cs.meta
│ │ │ ├── Editor
│ │ │ │ ├── NestedMultiPropertySampleEditor.cs.meta
│ │ │ │ └── NestedMultiPropertySampleEditor.cs
│ │ │ └── NestedMultiPropertySample.cs
│ │ ├── EditorUtilities
│ │ │ ├── EditorFieldUtility.cs.meta
│ │ │ ├── ReadOnlyFieldDrawer.cs.meta
│ │ │ ├── ReadOnlyFieldAttribute.cs.meta
│ │ │ ├── SerializedObjectViewer.cs.meta
│ │ │ ├── ReadOnlyFieldAttribute.cs
│ │ │ ├── ReadOnlyFieldDrawer.cs
│ │ │ ├── EditorFieldUtility.cs
│ │ │ └── SerializedObjectViewer.cs
│ │ └── SampleScene.unity
│ ├── SimpleReorderableList.meta
│ ├── SimpleReorderableListSamples.meta
│ └── SimpleReorderableList
│ │ ├── Mochineko.SimpleReorderableList.Editor.asmdef.meta
│ │ ├── BackgroundUtility.cs.meta
│ │ ├── LayoutUtility.cs.meta
│ │ ├── ReorderableList.cs.meta
│ │ ├── NativieFunctionOptions.cs.meta
│ │ ├── ReadyMadeDrawerOptions.cs.meta
│ │ ├── Mochineko.SimpleReorderableList.Editor.asmdef
│ │ ├── ReadyMadeDrawerOptions.cs
│ │ ├── NativieFunctionOptions.cs
│ │ ├── LayoutUtility.cs
│ │ ├── BackgroundUtility.cs
│ │ └── ReorderableList.cs
└── Mochineko.meta
├── .gitignore
├── LICENSE
├── README.md
└── Packages
└── manifest.json
/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 2019.1.4f1
2 | m_EditorVersionWithRevision: 2019.1.4f1 (ffa3a7a2dd7d)
3 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/Notice.txt:
--------------------------------------------------------------------------------
1 | This folder is a sample of SimpleReorderableList.
2 | If you do not need it, you can remove it safely.
--------------------------------------------------------------------------------
/ProjectSettings/ClusterInputManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!236 &1
4 | ClusterInputManager:
5 | m_ObjectHideFlags: 0
6 | m_Inputs: []
7 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | [Oo]bj/
2 | [Bb]uild/
3 | [Bb]uilds/
4 | Library
5 | Temp
6 | svn
7 | Logs
8 | .vs
9 | *.pidb
10 | *.unityproj
11 | *.sln
12 | *.userprefs
13 | *.csproj
14 | *.svn
15 | *.suo
16 | .gradle
--------------------------------------------------------------------------------
/ProjectSettings/NetworkManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!149 &1
4 | NetworkManager:
5 | m_ObjectHideFlags: 0
6 | m_DebugLevel: 0
7 | m_Sendrate: 15
8 | m_AssetToPrefab: {}
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0efde7e85d46f5648bb1ce6a253f3297
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/ProjectSettings/EditorBuildSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1045 &1
4 | EditorBuildSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Scenes: []
8 | m_configObjects: {}
9 |
--------------------------------------------------------------------------------
/ProjectSettings/XRSettings.asset:
--------------------------------------------------------------------------------
1 | {
2 | "m_SettingKeys": [
3 | "VR Device Disabled",
4 | "VR Device User Alert"
5 | ],
6 | "m_SettingValues": [
7 | "False",
8 | "False"
9 | ]
10 | }
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2664b19ba5f22e14dbb6d92e951b1fae
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/Notice.txt.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1a3e0594805b70149a391a3777d5d8a9
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/SampleScene.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 754e00a8b67b14843b2f180fd96d67e0
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e0d877223eea7294bb1bfa63bafe56eb
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/DropDown.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 090a8487aa65a7e428a3cbaa06be5b5c
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FullyFixed.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 91edc52f85cbb6d4eb88a0d8bc375a4e
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/MultiProperty.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3c02e22cf61f9eb4fbea6cd5c644b776
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/DropDown/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 88e63db71be41cf4abd402916a796b1b
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/EditorUtilities.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 75e8269259e30cd43b541ccb970ce321
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FixedElementCount.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d5ead304b11253248815d3ff42fb3d47
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FullyFixed/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 552fc1a33de70bd419dfb0eea9138ebb
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/SingleProperty.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2c568c2a0ce2d2048acdfbd08c14261b
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/MultiProperty/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ec13cc75656b5aa4f9030e4f9463315f
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/NestedMultiProperty.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: db16686bf55e8b34089eb13c4c826bea
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/SingleProperty/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 92d3375726bdc2c4da0cbf7d0b7ebf26
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/ProjectSettings/TimeManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!5 &1
4 | TimeManager:
5 | m_ObjectHideFlags: 0
6 | Fixed Timestep: 0.02
7 | Maximum Allowed Timestep: 0.1
8 | m_TimeScale: 1
9 | Maximum Particle Timestep: 0.03
10 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/Mochineko.SimpleReorderableList.Editor.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 83698e83a89d80f4392416859eccdf38
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FixedElementCount/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8ed09a60371c0de45839e5c6adc8c2ec
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/NestedMultiProperty/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9855c70c81a08f94181b6f78bb2ee2fe
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/BackgroundUtility.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 441d1bb47d061124b8a50efbbdf19f9d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/LayoutUtility.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 81f3f244ec1083042aa963f2f01a7ba4
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/ReorderableList.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c75d16f4397e5d04080678b4306cfdc6
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/ProjectSettings/VFXManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!937362698 &1
4 | VFXManager:
5 | m_ObjectHideFlags: 0
6 | m_IndirectShader: {fileID: 0}
7 | m_CopyBufferShader: {fileID: 0}
8 | m_SortShader: {fileID: 0}
9 | m_RenderPipeSettingsPath:
10 | m_FixedTimeStep: 0.016666668
11 | m_MaxDeltaTime: 0.05
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/NativieFunctionOptions.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1e32e54a4b982994784caf6a94aa8d46
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/ReadyMadeDrawerOptions.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 75c4b1c31feaecd4fa354a7b2591c1c0
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/DropDown/DropDownSample.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5f91c8a38c3bd404a8c620271cce3d9c
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FullyFixed/FullyFixedSample.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8843b8b82dc17b14b9236b6b7f0bd168
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/EditorUtilities/EditorFieldUtility.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8eaddf480d9b08e47aed7c67fe64e0ca
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/EditorUtilities/ReadOnlyFieldDrawer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 729730be836930a4fa7ba1e0d318ff4c
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/MultiProperty/MultiPropertySample.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 41deb4bea6cfe0249a18d5ff10c77289
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/SingleProperty/SinglePropertySample.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4162939a6c84ac64a8b9b1083ca0f257
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/DropDown/Editor/DropDownSampleEditor.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 45b7e012439e30e46967ca50b16f236b
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/EditorUtilities/ReadOnlyFieldAttribute.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a8166acdeeca7f249aaff471bd636d4e
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/EditorUtilities/SerializedObjectViewer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 52a2019e064403644a26655caec16788
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FullyFixed/Editor/FullyFixedSampleEditor.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c37fcf9ce997dcc42b8c597032062d5b
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FixedElementCount/FixedElementCountSample.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ae4c333d45a5b7d4daea26dbd42f8645
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/NestedMultiProperty/NestedMultiPropertySample.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ebeb0e9b143ca714aa2469deda2db9a4
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/SingleProperty/SinglePropertySample.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace Mochineko.SimpleReorderableList.Samples
6 | {
7 | public class SinglePropertySample : MonoBehaviour
8 | {
9 | [SerializeField]
10 | private string[] texts = new string[0];
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/MultiProperty/Editor/MultiPropertySampleEditor.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4bce968af43566a4ca2ef16f03c92665
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/SingleProperty/Editor/SinglePropertySampleEditor.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 381be4b8b78408b439d07d1a2e6cbb28
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FixedElementCount/Editor/FixedElementCountSampleEditor.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5d1b6601933c2184faa4a4cac65adea5
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FixedElementCount/FixedElementCountSample.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace Mochineko.SimpleReorderableList.Samples
6 | {
7 | public class FixedElementCountSample : MonoBehaviour
8 | {
9 | [SerializeField]
10 | private string[] texts = new string[5];
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/NestedMultiProperty/Editor/NestedMultiPropertySampleEditor.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 82f4461b7fdac9749b062e942d621f6c
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/ProjectSettings/AudioManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!11 &1
4 | AudioManager:
5 | m_ObjectHideFlags: 0
6 | m_Volume: 1
7 | Rolloff Scale: 1
8 | Doppler Factor: 1
9 | Default Speaker Mode: 2
10 | m_SampleRate: 0
11 | m_DSPBufferSize: 1024
12 | m_VirtualVoiceCount: 512
13 | m_RealVoiceCount: 32
14 | m_SpatializerPlugin:
15 | m_AmbisonicDecoderPlugin:
16 | m_DisableAudio: 0
17 | m_VirtualizeEffects: 1
18 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FullyFixed/FullyFixedSample.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace Mochineko.SimpleReorderableList.Samples
6 | {
7 | public class FullyFixedSample : MonoBehaviour
8 | {
9 | [SerializeField]
10 | [ReadOnlyField]
11 | private string[] texts = new string[]
12 | {
13 | "A",
14 | "B",
15 | "C",
16 | "D",
17 | "E"
18 | };
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/EditorUtilities/ReadOnlyFieldAttribute.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace Mochineko.SimpleReorderableList.Samples
6 | {
7 | ///
8 | /// An attribute to disallow edit on the Editor.
9 | /// Its drawer is .
10 | ///
11 | public class ReadOnlyFieldAttribute : PropertyAttribute
12 | {
13 |
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/Mochineko.SimpleReorderableList.Editor.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Mochineko.SimpleReorderableList.Editor",
3 | "references": [],
4 | "optionalUnityReferences": [],
5 | "includePlatforms": [
6 | "Editor"
7 | ],
8 | "excludePlatforms": [],
9 | "allowUnsafeCode": false,
10 | "overrideReferences": false,
11 | "precompiledReferences": [],
12 | "autoReferenced": true,
13 | "defineConstraints": [],
14 | "versionDefines": []
15 | }
--------------------------------------------------------------------------------
/ProjectSettings/TagManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!78 &1
4 | TagManager:
5 | serializedVersion: 2
6 | tags: []
7 | layers:
8 | - Default
9 | - TransparentFX
10 | - Ignore Raycast
11 | -
12 | - Water
13 | - UI
14 | -
15 | -
16 | - PostProcessing
17 | -
18 | -
19 | -
20 | -
21 | -
22 | -
23 | -
24 | -
25 | -
26 | -
27 | -
28 | -
29 | -
30 | -
31 | -
32 | -
33 | -
34 | -
35 | -
36 | -
37 | -
38 | -
39 | -
40 | m_SortingLayers:
41 | - name: Default
42 | uniqueID: 0
43 | locked: 0
44 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/MultiProperty/MultiPropertySample.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace Mochineko.SimpleReorderableList.Samples
6 | {
7 | public class MultiPropertySample : MonoBehaviour
8 | {
9 | [SerializeField]
10 | private List list = new List { };
11 |
12 | [System.Serializable]
13 | private class SampleElement
14 | {
15 | [SerializeField]
16 | private string label;
17 | [SerializeField]
18 | private bool activity;
19 | [SerializeField]
20 | private Vector3 position;
21 | }
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/ProjectSettings/EditorSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!159 &1
4 | EditorSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 7
7 | m_ExternalVersionControlSupport: Visible Meta Files
8 | m_SerializationMode: 2
9 | m_LineEndingsForNewScripts: 2
10 | m_DefaultBehaviorMode: 0
11 | m_SpritePackerMode: 0
12 | m_SpritePackerPaddingPower: 1
13 | m_EtcTextureCompressorBehavior: 1
14 | m_EtcTextureFastCompressor: 1
15 | m_EtcTextureNormalCompressor: 2
16 | m_EtcTextureBestCompressor: 4
17 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd
18 | m_ProjectGenerationRootNamespace:
19 | m_UserGeneratedProjectSuffix:
20 | m_CollabEditorSettings:
21 | inProgressEnabled: 1
22 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/EditorUtilities/ReadOnlyFieldDrawer.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEditor;
5 |
6 | namespace Mochineko.SimpleReorderableList.Samples.Editor
7 | {
8 | ///
9 | /// A property drawer for .
10 | ///
11 | [CustomPropertyDrawer(typeof(ReadOnlyFieldAttribute))]
12 | public class ReadOnlyFieldDrawer : PropertyDrawer
13 | {
14 | public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
15 | {
16 | EditorGUI.BeginDisabledGroup(true);
17 | {
18 | EditorGUI.PropertyField(position, property, label);
19 | }
20 | EditorGUI.EndDisabledGroup();
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/DropDown/DropDownSample.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace Mochineko.SimpleReorderableList.Samples
6 | {
7 | public class DropDownSample : MonoBehaviour
8 | {
9 | [SerializeField]
10 | private List humans = new List { };
11 | public List Humans => humans;
12 |
13 | public static readonly string[] bloodTypeCanditates = new string[]
14 | {
15 | "A",
16 | "B",
17 | "AB",
18 | "O"
19 | };
20 |
21 | [System.Serializable]
22 | public class Human
23 | {
24 | [SerializeField]
25 | private string name;
26 | [SerializeField]
27 | [ReadOnlyField]
28 | private string bloodType;
29 |
30 | public Human(string bloodType)
31 | {
32 | this.bloodType = bloodType;
33 | }
34 | }
35 |
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/NestedMultiProperty/NestedMultiPropertySample.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace Mochineko.SimpleReorderableList.Samples
6 | {
7 | public class NestedMultiPropertySample : MonoBehaviour
8 | {
9 | [SerializeField]
10 | private List list = new List { };
11 |
12 | [SerializeField]
13 | private string text;
14 |
15 | [System.Serializable]
16 | private class SampleElement
17 | {
18 | [SerializeField]
19 | private Rect rect = new Rect();
20 | [SerializeField]
21 | private Bounds bounds = new Bounds();
22 | [SerializeField]
23 | private Quaternion rotation = Quaternion.identity;
24 | [SerializeField]
25 | private Vector4 vector = new Vector4();
26 | [SerializeField]
27 | private string[] labels = new string[0];
28 | }
29 | }
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/ProjectSettings/PresetManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1386491679 &1
4 | PresetManager:
5 | m_ObjectHideFlags: 0
6 | m_DefaultList:
7 | - type:
8 | m_NativeTypeID: 108
9 | m_ManagedTypePPtr: {fileID: 0}
10 | m_ManagedTypeFallback:
11 | defaultPresets:
12 | - m_Preset: {fileID: 2655988077585873504, guid: c1cf8506f04ef2c4a88b64b6c4202eea,
13 | type: 2}
14 | - type:
15 | m_NativeTypeID: 1020
16 | m_ManagedTypePPtr: {fileID: 0}
17 | m_ManagedTypeFallback:
18 | defaultPresets:
19 | - m_Preset: {fileID: 2655988077585873504, guid: 0cd792cc87e492d43b4e95b205fc5cc6,
20 | type: 2}
21 | - type:
22 | m_NativeTypeID: 1006
23 | m_ManagedTypePPtr: {fileID: 0}
24 | m_ManagedTypeFallback:
25 | defaultPresets:
26 | - m_Preset: {fileID: 2655988077585873504, guid: 7a99f8aa944efe94cb9bd74562b7d5f9,
27 | type: 2}
28 |
--------------------------------------------------------------------------------
/ProjectSettings/UnityConnectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!310 &1
4 | UnityConnectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 1
7 | m_Enabled: 0
8 | m_TestMode: 0
9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com
12 | m_TestInitMode: 0
13 | CrashReportingSettings:
14 | m_EventUrl: https://perf-events.cloud.unity3d.com
15 | m_Enabled: 0
16 | m_LogBufferSize: 10
17 | m_CaptureEditorExceptions: 1
18 | UnityPurchasingSettings:
19 | m_Enabled: 0
20 | m_TestMode: 0
21 | UnityAnalyticsSettings:
22 | m_Enabled: 1
23 | m_TestMode: 0
24 | m_InitializeOnStartup: 1
25 | UnityAdsSettings:
26 | m_Enabled: 0
27 | m_InitializeOnStartup: 1
28 | m_TestMode: 0
29 | m_IosGameId:
30 | m_AndroidGameId:
31 | m_GameIds: {}
32 | m_GameId:
33 | PerformanceReportingSettings:
34 | m_Enabled: 0
35 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/MultiProperty/Editor/MultiPropertySampleEditor.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEditor;
5 |
6 | namespace Mochineko.SimpleReorderableList.Samples.Editor
7 | {
8 | [CustomEditor(typeof(MultiPropertySample))]
9 | public class MultiPropertySampleEditor : UnityEditor.Editor
10 | {
11 | private ReorderableList reorderableList;
12 |
13 | private void OnEnable()
14 | {
15 | reorderableList = new ReorderableList(
16 | serializedObject.FindProperty("list")
17 | );
18 | }
19 |
20 | public override void OnInspectorGUI()
21 | {
22 | serializedObject.Update();
23 |
24 | EditorGUI.BeginChangeCheck();
25 | {
26 | EditorFieldUtility.ReadOnlyComponentField(target as MonoBehaviour, this);
27 |
28 | if (reorderableList != null)
29 | reorderableList.Layout();
30 | }
31 | if (EditorGUI.EndChangeCheck())
32 | {
33 | serializedObject.ApplyModifiedProperties();
34 | }
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/SingleProperty/Editor/SinglePropertySampleEditor.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEditor;
5 |
6 | namespace Mochineko.SimpleReorderableList.Samples.Editor
7 | {
8 | [CustomEditor(typeof(SinglePropertySample))]
9 | public class SinglePropertySampleEditor : UnityEditor.Editor
10 | {
11 | private ReorderableList reorderableList;
12 |
13 | private void OnEnable()
14 | {
15 | reorderableList = new ReorderableList(
16 | serializedObject.FindProperty("texts")
17 | );
18 | }
19 |
20 | public override void OnInspectorGUI()
21 | {
22 | serializedObject.Update();
23 |
24 | EditorGUI.BeginChangeCheck();
25 | {
26 | EditorFieldUtility.ReadOnlyComponentField(target as MonoBehaviour, this);
27 |
28 | if (reorderableList != null)
29 | reorderableList.Layout();
30 | }
31 | if (EditorGUI.EndChangeCheck())
32 | {
33 | serializedObject.ApplyModifiedProperties();
34 | }
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/NestedMultiProperty/Editor/NestedMultiPropertySampleEditor.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEditor;
5 |
6 | namespace Mochineko.SimpleReorderableList.Samples.Editor
7 | {
8 | [CustomEditor(typeof(NestedMultiPropertySample))]
9 | public class NestedMultiPropertySampleEditor : UnityEditor.Editor
10 | {
11 | private ReorderableList reorderableList;
12 |
13 | private void OnEnable()
14 | {
15 | reorderableList = new ReorderableList(
16 | serializedObject.FindProperty("list")
17 | );
18 | }
19 |
20 | public override void OnInspectorGUI()
21 | {
22 | serializedObject.Update();
23 |
24 | EditorGUI.BeginChangeCheck();
25 | {
26 | EditorFieldUtility.ReadOnlyComponentField(target as MonoBehaviour, this);
27 |
28 | if (reorderableList != null)
29 | reorderableList.Layout();
30 | }
31 | if (EditorGUI.EndChangeCheck())
32 | {
33 | serializedObject.ApplyModifiedProperties();
34 | }
35 |
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 mochineko
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FullyFixed/Editor/FullyFixedSampleEditor.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEditor;
5 |
6 | namespace Mochineko.SimpleReorderableList.Samples.Editor
7 | {
8 | [CustomEditor(typeof(FullyFixedSample))]
9 | public class FullyFixedSampleEditor : UnityEditor.Editor
10 | {
11 | private ReorderableList reorderableList;
12 |
13 | private void OnEnable()
14 | {
15 | reorderableList = new ReorderableList(
16 | serializedObject.FindProperty("texts"),
17 | new NativeFunctionOptions(
18 | draggable: false,
19 | displayHeader: true,
20 | displayAddButton: false,
21 | displayRemoveButton: false)
22 | );
23 | }
24 |
25 | public override void OnInspectorGUI()
26 | {
27 | serializedObject.Update();
28 |
29 | EditorGUI.BeginChangeCheck();
30 | {
31 | EditorFieldUtility.ReadOnlyComponentField(target as MonoBehaviour, this);
32 |
33 | if (reorderableList != null)
34 | reorderableList.Layout();
35 | }
36 | if (EditorGUI.EndChangeCheck())
37 | {
38 | serializedObject.ApplyModifiedProperties();
39 | }
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/ProjectSettings/DynamicsManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!55 &1
4 | PhysicsManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 8
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_SleepThreshold: 0.005
11 | m_DefaultContactOffset: 0.01
12 | m_DefaultSolverIterations: 6
13 | m_DefaultSolverVelocityIterations: 1
14 | m_QueriesHitBackfaces: 0
15 | m_QueriesHitTriggers: 1
16 | m_EnableAdaptiveForce: 0
17 | m_ClothInterCollisionDistance: 0
18 | m_ClothInterCollisionStiffness: 0
19 | m_ContactsGeneration: 1
20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
21 | m_AutoSimulation: 1
22 | m_AutoSyncTransforms: 0
23 | m_ReuseCollisionCallbacks: 1
24 | m_ClothInterCollisionSettingsToggle: 0
25 | m_ContactPairsMode: 0
26 | m_BroadphaseType: 0
27 | m_WorldBounds:
28 | m_Center: {x: 0, y: 0, z: 0}
29 | m_Extent: {x: 250, y: 250, z: 250}
30 | m_WorldSubdivisions: 8
31 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/FixedElementCount/Editor/FixedElementCountSampleEditor.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEditor;
5 |
6 | namespace Mochineko.SimpleReorderableList.Samples.Editor
7 | {
8 | [CustomEditor(typeof(FixedElementCountSample))]
9 | public class FixedElementCountSampleEditor : UnityEditor.Editor
10 | {
11 | private ReorderableList reorderableList;
12 |
13 | private void OnEnable()
14 | {
15 | reorderableList = new ReorderableList(
16 | serializedObject.FindProperty("texts"),
17 | new NativeFunctionOptions(
18 | draggable: true,
19 | displayHeader: true,
20 | displayAddButton: false,
21 | displayRemoveButton: false)
22 | );
23 | }
24 |
25 | public override void OnInspectorGUI()
26 | {
27 | serializedObject.Update();
28 |
29 | EditorGUI.BeginChangeCheck();
30 | {
31 | EditorFieldUtility.ReadOnlyComponentField(target as MonoBehaviour, this);
32 |
33 | if (reorderableList != null)
34 | reorderableList.Layout();
35 | }
36 | if (EditorGUI.EndChangeCheck())
37 | {
38 | serializedObject.ApplyModifiedProperties();
39 | }
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/DropDown/Editor/DropDownSampleEditor.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEditor;
5 |
6 | namespace Mochineko.SimpleReorderableList.Samples.Editor
7 | {
8 | [CustomEditor(typeof(DropDownSample))]
9 | public class DropDownSampleEditor : UnityEditor.Editor
10 | {
11 | private ReorderableList reorderableList;
12 | private DropDownSample component;
13 |
14 | private void OnEnable()
15 | {
16 | if (component == null)
17 | component = target as DropDownSample;
18 |
19 | reorderableList = new ReorderableList(
20 | serializedObject.FindProperty("humans"),
21 | new NativeFunctionOptions()
22 | );
23 |
24 | reorderableList.AddDrawDropDownCallback(
25 | DropDownSample.bloodTypeCanditates,
26 | (selected) => component.Humans.Add(new DropDownSample.Human(selected))
27 | );
28 | }
29 |
30 | public override void OnInspectorGUI()
31 | {
32 | serializedObject.Update();
33 |
34 | EditorGUI.BeginChangeCheck();
35 | {
36 | EditorFieldUtility.ReadOnlyComponentField(target as MonoBehaviour, this);
37 |
38 | if (reorderableList != null)
39 | reorderableList.Layout();
40 | }
41 | if (EditorGUI.EndChangeCheck())
42 | {
43 | serializedObject.ApplyModifiedProperties();
44 | }
45 | }
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # simple-reorderable-list-unity
2 | Supplies a simple tool to use **reorderable list** on UnityEditor GUI.
3 |
4 | # Features
5 | - Supplies **natural operations** of a list on GUI.
6 | - Supports **generic** list and array of serialized properties.
7 | - Supplies **readable colored** element background.
8 | - Supplies drop down menu to add an element.
9 | - Allows extension to native `UnityEditorInternal.ReorderableList`
10 |
11 | # Samples
12 | - You can order elements by dragging.
13 |
14 | 
15 |
16 | - You can add and remove an element by clicking buttons on the right of bottom.
17 |
18 | 
19 |
20 | - You can apply this for a generic list including user defined classes.
21 |
22 | 
23 |
24 | - You can user drop down menu if you set up.
25 |
26 | 
27 |
28 | Sample implementations are in *Mochineko/SimpleReorderableListSamples* folder.
29 |
30 | # Introduction
31 | Please download the latest **.unitypackage** from Release page.
32 |
33 | Then import it to your Unity project.
34 |
--------------------------------------------------------------------------------
/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!19 &1
4 | Physics2DSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 4
7 | m_Gravity: {x: 0, y: -9.81}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_VelocityIterations: 8
10 | m_PositionIterations: 3
11 | m_VelocityThreshold: 1
12 | m_MaxLinearCorrection: 0.2
13 | m_MaxAngularCorrection: 8
14 | m_MaxTranslationSpeed: 100
15 | m_MaxRotationSpeed: 360
16 | m_BaumgarteScale: 0.2
17 | m_BaumgarteTimeOfImpactScale: 0.75
18 | m_TimeToSleep: 0.5
19 | m_LinearSleepTolerance: 0.01
20 | m_AngularSleepTolerance: 2
21 | m_DefaultContactOffset: 0.01
22 | m_AutoSimulation: 1
23 | m_QueriesHitTriggers: 1
24 | m_QueriesStartInColliders: 1
25 | m_ChangeStopsCallbacks: 0
26 | m_CallbacksOnDisable: 1
27 | m_ReuseCollisionCallbacks: 1
28 | m_AutoSyncTransforms: 0
29 | m_AlwaysShowColliders: 0
30 | m_ShowColliderSleep: 1
31 | m_ShowColliderContacts: 0
32 | m_ShowColliderAABB: 0
33 | m_ContactArrowScale: 0.2
34 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
35 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
36 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
37 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
38 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
39 |
--------------------------------------------------------------------------------
/ProjectSettings/NavMeshAreas.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!126 &1
4 | NavMeshProjectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | areas:
8 | - name: Walkable
9 | cost: 1
10 | - name: Not Walkable
11 | cost: 1
12 | - name: Jump
13 | cost: 2
14 | - name:
15 | cost: 1
16 | - name:
17 | cost: 1
18 | - name:
19 | cost: 1
20 | - name:
21 | cost: 1
22 | - name:
23 | cost: 1
24 | - name:
25 | cost: 1
26 | - name:
27 | cost: 1
28 | - name:
29 | cost: 1
30 | - name:
31 | cost: 1
32 | - name:
33 | cost: 1
34 | - name:
35 | cost: 1
36 | - name:
37 | cost: 1
38 | - name:
39 | cost: 1
40 | - name:
41 | cost: 1
42 | - name:
43 | cost: 1
44 | - name:
45 | cost: 1
46 | - name:
47 | cost: 1
48 | - name:
49 | cost: 1
50 | - name:
51 | cost: 1
52 | - name:
53 | cost: 1
54 | - name:
55 | cost: 1
56 | - name:
57 | cost: 1
58 | - name:
59 | cost: 1
60 | - name:
61 | cost: 1
62 | - name:
63 | cost: 1
64 | - name:
65 | cost: 1
66 | - name:
67 | cost: 1
68 | - name:
69 | cost: 1
70 | - name:
71 | cost: 1
72 | m_LastAgentTypeID: -887442657
73 | m_Settings:
74 | - serializedVersion: 2
75 | agentTypeID: 0
76 | agentRadius: 0.5
77 | agentHeight: 2
78 | agentSlope: 45
79 | agentClimb: 0.75
80 | ledgeDropHeight: 0
81 | maxJumpAcrossDistance: 0
82 | minRegionArea: 2
83 | manualCellSize: 0
84 | cellSize: 0.16666667
85 | manualTileSize: 0
86 | tileSize: 256
87 | accuratePlacement: 0
88 | debug:
89 | m_Flags: 0
90 | m_SettingNames:
91 | - Humanoid
92 |
--------------------------------------------------------------------------------
/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.unity.ads": "2.0.8",
4 | "com.unity.analytics": "3.3.2",
5 | "com.unity.collab-proxy": "1.2.16",
6 | "com.unity.multiplayer-hlapi": "1.0.2",
7 | "com.unity.package-manager-ui": "2.1.2",
8 | "com.unity.purchasing": "2.0.6",
9 | "com.unity.textmeshpro": "2.0.1",
10 | "com.unity.timeline": "1.0.0",
11 | "com.unity.xr.legacyinputhelpers": "2.0.2",
12 | "com.unity.modules.ai": "1.0.0",
13 | "com.unity.modules.animation": "1.0.0",
14 | "com.unity.modules.assetbundle": "1.0.0",
15 | "com.unity.modules.audio": "1.0.0",
16 | "com.unity.modules.cloth": "1.0.0",
17 | "com.unity.modules.director": "1.0.0",
18 | "com.unity.modules.imageconversion": "1.0.0",
19 | "com.unity.modules.imgui": "1.0.0",
20 | "com.unity.modules.jsonserialize": "1.0.0",
21 | "com.unity.modules.particlesystem": "1.0.0",
22 | "com.unity.modules.physics": "1.0.0",
23 | "com.unity.modules.physics2d": "1.0.0",
24 | "com.unity.modules.screencapture": "1.0.0",
25 | "com.unity.modules.terrain": "1.0.0",
26 | "com.unity.modules.terrainphysics": "1.0.0",
27 | "com.unity.modules.tilemap": "1.0.0",
28 | "com.unity.modules.ui": "1.0.0",
29 | "com.unity.modules.uielements": "1.0.0",
30 | "com.unity.modules.umbra": "1.0.0",
31 | "com.unity.modules.unityanalytics": "1.0.0",
32 | "com.unity.modules.unitywebrequest": "1.0.0",
33 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
34 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
35 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
36 | "com.unity.modules.unitywebrequestwww": "1.0.0",
37 | "com.unity.modules.vehicles": "1.0.0",
38 | "com.unity.modules.video": "1.0.0",
39 | "com.unity.modules.vr": "1.0.0",
40 | "com.unity.modules.wind": "1.0.0",
41 | "com.unity.modules.xr": "1.0.0"
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/ReadyMadeDrawerOptions.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Mochineko.SimpleReorderableList
4 | {
5 | ///
6 | /// Holds options which judge to use ready made drawers.
7 | ///
8 | public struct ReadyMadeDrawerOptions : IEquatable
9 | {
10 | ///
11 | /// Uses the ready made header drawer or not.
12 | ///
13 | public bool UseReadyMadeHeader { get; }
14 | ///
15 | /// Uses the ready made element drawer or not.
16 | ///
17 | public bool UseReadyMadeElement { get; }
18 | ///
19 | /// Uses the ready made element background drawer or not.
20 | ///
21 | public bool UseReadyMadeBackground { get; }
22 |
23 | public ReadyMadeDrawerOptions(
24 | bool useReadyMadeHeader,
25 | bool useReadyMadeElement = true,
26 | bool useReadyMadeBackground = true)
27 | {
28 | UseReadyMadeHeader = useReadyMadeHeader;
29 | UseReadyMadeElement = useReadyMadeElement;
30 | UseReadyMadeBackground = useReadyMadeBackground;
31 | }
32 |
33 | ///
34 | /// Supplies default options.
35 | ///
36 | public static ReadyMadeDrawerOptions Default
37 | => new ReadyMadeDrawerOptions(
38 | useReadyMadeHeader: true,
39 | useReadyMadeElement: true,
40 | useReadyMadeBackground: true
41 | );
42 |
43 |
44 | bool IEquatable.Equals(ReadyMadeDrawerOptions other)
45 | {
46 | if (this.UseReadyMadeHeader != other.UseReadyMadeHeader)
47 | return false;
48 | if (this.UseReadyMadeElement != other.UseReadyMadeElement)
49 | return false;
50 | if (this.UseReadyMadeBackground != other.UseReadyMadeBackground)
51 | return false;
52 |
53 | return true;
54 | }
55 |
56 | public override int GetHashCode()
57 | {
58 | var hashCode = -360803941;
59 |
60 | hashCode = hashCode * -1521134295 + UseReadyMadeHeader.GetHashCode();
61 | hashCode = hashCode * -1521134295 + UseReadyMadeElement.GetHashCode();
62 | hashCode = hashCode * -1521134295 + UseReadyMadeBackground.GetHashCode();
63 |
64 | return hashCode;
65 | }
66 | }
67 | }
68 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/NativieFunctionOptions.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Mochineko.SimpleReorderableList
4 | {
5 | ///
6 | /// Holds options which judge to use native functions.
7 | ///
8 | public struct NativeFunctionOptions : IEquatable
9 | {
10 | ///
11 | /// Element can be dragged or not.
12 | ///
13 | public bool Draggable { get; }
14 | ///
15 | /// Displays text in header or not.
16 | ///
17 | public bool DisplayHeader { get; }
18 | ///
19 | /// Displays add (+) button or not.
20 | ///
21 | public bool DisplayAddButton { get; }
22 | ///
23 | /// Displays remove (-) button or not.
24 | ///
25 | public bool DisplayRemoveButton { get; }
26 |
27 | public NativeFunctionOptions(
28 | bool draggable,
29 | bool displayHeader = true,
30 | bool displayAddButton = true,
31 | bool displayRemoveButton = true)
32 | {
33 | Draggable = draggable;
34 | DisplayHeader = displayHeader;
35 | DisplayAddButton = displayAddButton;
36 | DisplayRemoveButton = displayRemoveButton;
37 | }
38 |
39 | ///
40 | /// Supplies defalut options.
41 | ///
42 | public static NativeFunctionOptions Default
43 | => new NativeFunctionOptions(
44 | draggable: true,
45 | displayHeader: true,
46 | displayAddButton: true,
47 | displayRemoveButton: true
48 | );
49 |
50 |
51 | bool IEquatable.Equals(NativeFunctionOptions other)
52 | {
53 | if (this.Draggable != other.Draggable)
54 | return false;
55 | if (this.DisplayHeader != other.DisplayHeader)
56 | return false;
57 | if (this.DisplayAddButton != other.DisplayAddButton)
58 | return false;
59 | if (this.DisplayRemoveButton != other.DisplayRemoveButton)
60 | return false;
61 |
62 | return true;
63 | }
64 |
65 | public override int GetHashCode()
66 | {
67 | var hashCode = 1643622589;
68 |
69 | hashCode = hashCode * -1521134295 + Draggable.GetHashCode();
70 | hashCode = hashCode * -1521134295 + DisplayHeader.GetHashCode();
71 | hashCode = hashCode * -1521134295 + DisplayAddButton.GetHashCode();
72 | hashCode = hashCode * -1521134295 + DisplayRemoveButton.GetHashCode();
73 |
74 | return hashCode;
75 | }
76 | }
77 | }
78 |
79 |
--------------------------------------------------------------------------------
/ProjectSettings/GraphicsSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!30 &1
4 | GraphicsSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 12
7 | m_Deferred:
8 | m_Mode: 1
9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 | m_DeferredReflections:
11 | m_Mode: 1
12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 | m_ScreenSpaceShadows:
14 | m_Mode: 1
15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 | m_LegacyDeferred:
17 | m_Mode: 1
18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 | m_DepthNormals:
20 | m_Mode: 1
21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 | m_MotionVectors:
23 | m_Mode: 1
24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 | m_LightHalo:
26 | m_Mode: 1
27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 | m_LensFlare:
29 | m_Mode: 1
30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 | m_AlwaysIncludedShaders:
32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
38 | - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0}
39 | m_PreloadedShaders: []
40 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
41 | type: 0}
42 | m_CustomRenderPipeline: {fileID: 0}
43 | m_TransparencySortMode: 0
44 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
45 | m_DefaultRenderingPath: 1
46 | m_DefaultMobileRenderingPath: 1
47 | m_TierSettings: []
48 | m_LightmapStripping: 0
49 | m_FogStripping: 0
50 | m_InstancingStripping: 0
51 | m_LightmapKeepPlain: 1
52 | m_LightmapKeepDirCombined: 1
53 | m_LightmapKeepDynamicPlain: 1
54 | m_LightmapKeepDynamicDirCombined: 1
55 | m_LightmapKeepShadowMask: 1
56 | m_LightmapKeepSubtractive: 1
57 | m_FogKeepLinear: 1
58 | m_FogKeepExp: 1
59 | m_FogKeepExp2: 1
60 | m_AlbedoSwatchInfos: []
61 | m_LightsUseLinearIntensity: 0
62 | m_LightsUseColorTemperature: 0
63 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/LayoutUtility.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using UnityEditor;
3 |
4 | namespace Mochineko.SimpleReorderableList
5 | {
6 | ///
7 | /// Supplies layout utilities for reorderable list.
8 | ///
9 | public static class LayoutUtility
10 | {
11 |
12 | #region Foldout
13 |
14 | ///
15 | /// The width of grip marker in the left of reorderable list element.
16 | ///
17 | private const float foldoutAdjustingWidth = 12f;
18 |
19 | ///
20 | /// Returns has foldout or not.
21 | ///
22 | ///
23 | ///
24 | private static bool HasFoldout(SerializedProperty property)
25 | {
26 | switch (property.propertyType)
27 | {
28 | case SerializedPropertyType.Generic:
29 | return true;
30 |
31 | case SerializedPropertyType.Vector4:
32 | return true;
33 |
34 | case SerializedPropertyType.Quaternion:
35 | return true;
36 |
37 | default:
38 | return false;
39 | }
40 | }
41 |
42 | ///
43 | /// Returns slided rect to adjust foldout.
44 | ///
45 | ///
46 | ///
47 | private static Rect FoldoutSildedRect(Rect rect)
48 | {
49 | // slide to the right
50 | rect.x += foldoutAdjustingWidth;
51 | rect.width -= foldoutAdjustingWidth;
52 |
53 | return rect;
54 | }
55 |
56 | #endregion
57 |
58 | #region Rect and Height
59 |
60 | ///
61 | /// The height margin of a single element.
62 | ///
63 | private const float singleElementHeightMargin = 2f;
64 |
65 | ///
66 | /// Adjusts rect with foldout and height margin.
67 | ///
68 | ///
69 | ///
70 | ///
71 | public static Rect AdjustedRect(Rect rect, SerializedProperty property)
72 | {
73 | // adjust with foldout
74 | if (HasFoldout(property))
75 | rect = FoldoutSildedRect(rect);
76 |
77 | // adjust vertical center position with margin
78 | rect.y += singleElementHeightMargin;
79 |
80 | return rect;
81 | }
82 |
83 | ///
84 | /// Calculates element height of a with height margin.
85 | ///
86 | ///
87 | ///
88 | public static float ElementHeight(SerializedProperty property)
89 | => EditorGUI.GetPropertyHeight(property)
90 | + singleElementHeightMargin * 2f; // top and bottom
91 |
92 | #endregion
93 |
94 | }
95 | }
96 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/EditorUtilities/EditorFieldUtility.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEditor;
5 |
6 | namespace Mochineko.SimpleReorderableList.Samples.Editor
7 | {
8 | ///
9 | /// Supplies editor field utilities.
10 | ///
11 | public static class EditorFieldUtility
12 | {
13 | ///
14 | /// The label of editor script.
15 | ///
16 | private const string editorLabel = "Editor";
17 | ///
18 | /// The label of script.
19 | ///
20 | private const string scriptLabel = "Script";
21 | ///
22 | /// The label of instance of a scriptable object.
23 | ///
24 | private const string scriptableInstanceLabel = "Instance";
25 |
26 | ///
27 | /// Draw a read only filed of an editor script.
28 | ///
29 | ///
30 | public static void ReadOnlyEditorField(ScriptableObject editor)
31 | {
32 | EditorGUI.BeginDisabledGroup(true);
33 | {
34 | ScriptField(editor, editorLabel);
35 | }
36 | EditorGUI.EndDisabledGroup();
37 | }
38 |
39 | ///
40 | /// Draw a read only field of a component script with editor.
41 | ///
42 | ///
43 | ///
44 | public static void ReadOnlyComponentField(MonoBehaviour script, ScriptableObject editor)
45 | {
46 | EditorGUI.BeginDisabledGroup(true);
47 | {
48 | ScriptField(script, scriptLabel);
49 | ScriptField(editor, editorLabel);
50 | }
51 | EditorGUI.EndDisabledGroup();
52 | }
53 |
54 | ///
55 | /// Draw a read only field of a scriptable object with editor and instnce.
56 | ///
57 | ///
58 | ///
59 | public static void ReadOnlyScriptableObjectField(ScriptableObject scriptable, ScriptableObject editor)
60 | {
61 | EditorGUI.BeginDisabledGroup(true);
62 | {
63 | ScriptField(scriptable, scriptLabel);
64 | ScriptField(editor, editorLabel);
65 | ScriptableObjectField(scriptable, scriptableInstanceLabel);
66 | }
67 | EditorGUI.EndDisabledGroup();
68 | }
69 |
70 | ///
71 | /// Draw a mono script from a scriptable object with label.
72 | ///
73 | ///
74 | ///
75 | private static void ScriptField(ScriptableObject scriptable, string label)
76 | {
77 | if (scriptable == null)
78 | return;
79 |
80 | EditorGUILayout.ObjectField(
81 | label,
82 | MonoScript.FromScriptableObject(scriptable),
83 | typeof(MonoScript),
84 | false
85 | );
86 | }
87 | ///
88 | /// Draw a mono script from a MonoBehaviour with label.
89 | ///
90 | ///
91 | ///
92 | private static void ScriptField(MonoBehaviour script, string label)
93 | {
94 | if (script == null)
95 | return;
96 |
97 | EditorGUILayout.ObjectField(
98 | label,
99 | MonoScript.FromMonoBehaviour(script),
100 | typeof(MonoScript),
101 | false
102 | );
103 | }
104 |
105 | ///
106 | /// Draw an instance of a scriptable object with label.
107 | ///
108 | ///
109 | ///
110 | private static void ScriptableObjectField(ScriptableObject scriptable, string label)
111 | {
112 | EditorGUILayout.ObjectField(
113 | label,
114 | scriptable,
115 | typeof(ScriptableObject),
116 | false
117 | );
118 | }
119 | }
120 | }
121 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/EditorUtilities/SerializedObjectViewer.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using UnityEditor;
5 |
6 | namespace Mochineko.SimpleReorderableList.Samples.Editor
7 | {
8 | ///
9 | /// Supplies a debbugging viewer of and .
10 | ///
11 | public static class SerializedObjectViewer
12 | {
13 | ///
14 | /// Draws all properties in including invibible these.
15 | ///
16 | ///
17 | public static void DrawAll(SerializedObject serializedObject)
18 | {
19 | EditorGUILayout.BeginVertical(GUI.skin.box);
20 | {
21 | var iterator = serializedObject.GetIterator();
22 |
23 | while (iterator.Next(true))
24 | PropertyInfoField(iterator.Copy());
25 | }
26 | EditorGUILayout.EndVertical();
27 | }
28 |
29 | ///
30 | /// Draws properties in only visible these.
31 | ///
32 | ///
33 | public static void DrawVisible(SerializedObject serializedObject)
34 | {
35 | EditorGUILayout.BeginVertical(GUI.skin.box);
36 | {
37 | var iterator = serializedObject.GetIterator();
38 |
39 | while (iterator.NextVisible(true))
40 | PropertyInfoField(iterator.Copy());
41 | }
42 | EditorGUILayout.EndVertical();
43 | }
44 |
45 | ///
46 | /// Draws all properties in including invibible these.
47 | ///
48 | ///
49 | public static void DrawAll(SerializedProperty property)
50 | {
51 | var depth = property.depth;
52 | var copied = property.Copy();
53 |
54 | EditorGUILayout.BeginVertical(GUI.skin.box);
55 | {
56 | PropertyInfoField(property);
57 |
58 | while (copied.Next(true))
59 | {
60 | if (copied.depth <= depth)
61 | break;
62 |
63 | PropertyInfoField(copied.Copy());
64 | }
65 | }
66 | EditorGUILayout.EndVertical();
67 | }
68 |
69 | ///
70 | /// Draws properties in only visible these.
71 | ///
72 | ///
73 | public static void DrawVisible(SerializedProperty property)
74 | {
75 | var depth = property.depth;
76 | var copied = property.Copy();
77 |
78 | EditorGUILayout.BeginVertical(GUI.skin.box);
79 | {
80 | PropertyInfoField(property);
81 |
82 | while (copied.NextVisible(true))
83 | {
84 | if (copied.depth <= depth)
85 | break;
86 |
87 | PropertyInfoField(copied.Copy());
88 | }
89 | }
90 | EditorGUILayout.EndVertical();
91 | }
92 |
93 |
94 | ///
95 | /// Draws informations of by text with margin by depth.
96 | ///
97 | ///
98 | private static void PropertyInfoField(SerializedProperty property)
99 | {
100 | EditorGUILayout.LabelField($"{Nest(property.depth)}{property.displayName} : <{property.propertyType}>");
101 | }
102 |
103 | ///
104 | /// Nest text by .
105 | ///
106 | ///
107 | ///
108 | private static string Nest(int depthCount)
109 | {
110 | var builder = new System.Text.StringBuilder();
111 |
112 | for (var i = 0; i < depthCount; i++)
113 | builder.Append(" | ");
114 |
115 | if (depthCount > 0)
116 | builder.Append("- ");
117 |
118 | return builder.ToString();
119 | }
120 | }
121 | }
122 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/BackgroundUtility.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using UnityEditor;
3 |
4 | namespace Mochineko.SimpleReorderableList
5 | {
6 | ///
7 | /// Supplies element background drawing method for reorderable list.
8 | ///
9 | public static class BackgroundUtility
10 | {
11 |
12 | #region Color
13 |
14 | ///
15 | /// Active color on personal skin.
16 | ///
17 | private static readonly Color activeColorPersonal = new Color(0.3f, 0.6f, 0.95f, 0.95f);
18 | ///
19 | /// Active color on professional skin.
20 | ///
21 | private static readonly Color activteColorProfessional = new Color(0.2f, 0.4f, 0.7f, 0.95f);
22 | ///
23 | /// Supplies active color on user skin.
24 | ///
25 | private static Color ActiveColor
26 | {
27 | get
28 | {
29 | if (EditorGUIUtility.isProSkin)
30 | return activteColorProfessional;
31 | else
32 | return activeColorPersonal;
33 | }
34 | }
35 |
36 | ///
37 | /// Background color on personal skin.
38 | ///
39 | private static Color backgroundColorPersonal = new Color(0.85f, 0.85f, 0.85f, 1f);
40 | ///
41 | /// Background color on professional skin.
42 | ///
43 | private static Color backgroundColorProfessional = new Color(0.25f, 0.25f, 0.25f, 1f);
44 | ///
45 | /// Supplies background color for user skin.
46 | ///
47 | private static Color DifferentBackgroundColor
48 | {
49 | get
50 | {
51 | if (EditorGUIUtility.isProSkin)
52 | return backgroundColorProfessional;
53 | else
54 | return backgroundColorPersonal;
55 | }
56 | }
57 |
58 | #endregion
59 |
60 | #region Margin
61 |
62 | ///
63 | /// The width of left side margin on element background.
64 | ///
65 | private static float ElementLeftMargin
66 | {
67 | get
68 | {
69 | if (EditorGUIUtility.isProSkin)
70 | return 1f;
71 | else
72 | return 2f;
73 | }
74 | }
75 | ///
76 | /// The width of right side extrusion on element background.
77 | ///
78 | private static float ElementRightExtrusion
79 | => 2f;
80 |
81 | ///
82 | /// The width of left side margin on active element.
83 | ///
84 | private static float ActiveLeftMargin
85 | => 1f;
86 | ///
87 | /// The width of right side extrusion on active element.
88 | ///
89 | private static float ActiveRightExtrusion
90 | {
91 | get
92 | {
93 | if (EditorGUIUtility.isProSkin)
94 | return 2f;
95 | else
96 | return 1f;
97 | }
98 | }
99 |
100 | #endregion
101 |
102 | #region Drawing
103 |
104 | ///
105 | /// Draws different color element background to .
106 | ///
107 | ///
108 | public static void DrawElementBackgroundColorDifferent(Rect rect)
109 | => DrawElementBackgroundColor(
110 | rect,
111 | DifferentBackgroundColor,
112 | ElementLeftMargin,
113 | ElementRightExtrusion
114 | );
115 |
116 | ///
117 | /// Draws active color element background to .
118 | ///
119 | ///
120 | public static void DrawElementBackgroundColorActive(Rect rect)
121 | => DrawElementBackgroundColor(
122 | rect,
123 | ActiveColor,
124 | ActiveLeftMargin,
125 | ActiveRightExtrusion
126 | );
127 |
128 | ///
129 | /// Draw color texture to as element background.
130 | ///
131 | ///
132 | ///
133 | ///
134 | ///
135 | private static void DrawElementBackgroundColor(
136 | Rect rect,
137 | Color color,
138 | float leftMargin,
139 | float rightExtrusion)
140 | {
141 | GUI.DrawTexture(
142 | HorizontalAdjusted(rect, leftMargin, rightExtrusion),
143 | CreateColorTexture(color),
144 | ScaleMode.StretchToFill
145 | );
146 | }
147 |
148 | ///
149 | /// Adjusts horisontal parameters of .
150 | ///
151 | ///
152 | ///
153 | ///
154 | ///
155 | private static Rect HorizontalAdjusted(
156 | Rect rect,
157 | float leftMargin,
158 | float rightExtrusion)
159 | {
160 | rect.x += leftMargin;
161 |
162 | rect.width -= (leftMargin + rightExtrusion);
163 |
164 | return rect;
165 | }
166 |
167 | ///
168 | /// Creates mono color texture with minimum size.
169 | ///
170 | ///
171 | ///
172 | private static Texture2D CreateColorTexture(Color color)
173 | {
174 | var texture = new Texture2D(1, 1);
175 |
176 | texture.SetPixel(0, 0, color);
177 |
178 | texture.Apply();
179 |
180 | return texture;
181 | }
182 |
183 | #endregion
184 |
185 | }
186 | }
--------------------------------------------------------------------------------
/ProjectSettings/QualitySettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!47 &1
4 | QualitySettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 5
7 | m_CurrentQuality: 4
8 | m_QualitySettings:
9 | - serializedVersion: 2
10 | name: Very Low
11 | pixelLightCount: 0
12 | shadows: 0
13 | shadowResolution: 0
14 | shadowProjection: 1
15 | shadowCascades: 1
16 | shadowDistance: 15
17 | shadowNearPlaneOffset: 3
18 | shadowCascade2Split: 0.33333334
19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
20 | shadowmaskMode: 0
21 | blendWeights: 1
22 | textureQuality: 1
23 | anisotropicTextures: 0
24 | antiAliasing: 0
25 | softParticles: 0
26 | softVegetation: 0
27 | realtimeReflectionProbes: 0
28 | billboardsFaceCameraPosition: 0
29 | vSyncCount: 0
30 | lodBias: 0.3
31 | maximumLODLevel: 0
32 | particleRaycastBudget: 4
33 | asyncUploadTimeSlice: 2
34 | asyncUploadBufferSize: 16
35 | resolutionScalingFixedDPIFactor: 1
36 | excludedTargetPlatforms: []
37 | - serializedVersion: 2
38 | name: Low
39 | pixelLightCount: 0
40 | shadows: 0
41 | shadowResolution: 0
42 | shadowProjection: 1
43 | shadowCascades: 1
44 | shadowDistance: 20
45 | shadowNearPlaneOffset: 3
46 | shadowCascade2Split: 0.33333334
47 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
48 | shadowmaskMode: 0
49 | blendWeights: 2
50 | textureQuality: 0
51 | anisotropicTextures: 0
52 | antiAliasing: 0
53 | softParticles: 0
54 | softVegetation: 0
55 | realtimeReflectionProbes: 0
56 | billboardsFaceCameraPosition: 0
57 | vSyncCount: 0
58 | lodBias: 0.4
59 | maximumLODLevel: 0
60 | particleRaycastBudget: 16
61 | asyncUploadTimeSlice: 2
62 | asyncUploadBufferSize: 16
63 | resolutionScalingFixedDPIFactor: 1
64 | excludedTargetPlatforms: []
65 | - serializedVersion: 2
66 | name: Medium
67 | pixelLightCount: 1
68 | shadows: 1
69 | shadowResolution: 0
70 | shadowProjection: 1
71 | shadowCascades: 1
72 | shadowDistance: 20
73 | shadowNearPlaneOffset: 3
74 | shadowCascade2Split: 0.33333334
75 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
76 | shadowmaskMode: 0
77 | blendWeights: 2
78 | textureQuality: 0
79 | anisotropicTextures: 1
80 | antiAliasing: 0
81 | softParticles: 0
82 | softVegetation: 0
83 | realtimeReflectionProbes: 0
84 | billboardsFaceCameraPosition: 0
85 | vSyncCount: 1
86 | lodBias: 0.7
87 | maximumLODLevel: 0
88 | particleRaycastBudget: 64
89 | asyncUploadTimeSlice: 2
90 | asyncUploadBufferSize: 16
91 | resolutionScalingFixedDPIFactor: 1
92 | excludedTargetPlatforms: []
93 | - serializedVersion: 2
94 | name: High
95 | pixelLightCount: 2
96 | shadows: 2
97 | shadowResolution: 1
98 | shadowProjection: 1
99 | shadowCascades: 2
100 | shadowDistance: 40
101 | shadowNearPlaneOffset: 3
102 | shadowCascade2Split: 0.33333334
103 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
104 | shadowmaskMode: 1
105 | blendWeights: 2
106 | textureQuality: 0
107 | anisotropicTextures: 1
108 | antiAliasing: 2
109 | softParticles: 0
110 | softVegetation: 1
111 | realtimeReflectionProbes: 1
112 | billboardsFaceCameraPosition: 1
113 | vSyncCount: 1
114 | lodBias: 1
115 | maximumLODLevel: 0
116 | particleRaycastBudget: 256
117 | asyncUploadTimeSlice: 2
118 | asyncUploadBufferSize: 16
119 | resolutionScalingFixedDPIFactor: 1
120 | excludedTargetPlatforms: []
121 | - serializedVersion: 2
122 | name: Very High
123 | pixelLightCount: 3
124 | shadows: 2
125 | shadowResolution: 2
126 | shadowProjection: 1
127 | shadowCascades: 2
128 | shadowDistance: 40
129 | shadowNearPlaneOffset: 3
130 | shadowCascade2Split: 0.33333334
131 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
132 | shadowmaskMode: 1
133 | blendWeights: 4
134 | textureQuality: 0
135 | anisotropicTextures: 1
136 | antiAliasing: 4
137 | softParticles: 1
138 | softVegetation: 1
139 | realtimeReflectionProbes: 1
140 | billboardsFaceCameraPosition: 1
141 | vSyncCount: 1
142 | lodBias: 1.5
143 | maximumLODLevel: 0
144 | particleRaycastBudget: 1024
145 | asyncUploadTimeSlice: 2
146 | asyncUploadBufferSize: 16
147 | resolutionScalingFixedDPIFactor: 1
148 | excludedTargetPlatforms: []
149 | - serializedVersion: 2
150 | name: Ultra
151 | pixelLightCount: 4
152 | shadows: 2
153 | shadowResolution: 2
154 | shadowProjection: 1
155 | shadowCascades: 4
156 | shadowDistance: 150
157 | shadowNearPlaneOffset: 3
158 | shadowCascade2Split: 0.33333334
159 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
160 | shadowmaskMode: 1
161 | blendWeights: 4
162 | textureQuality: 0
163 | anisotropicTextures: 1
164 | antiAliasing: 4
165 | softParticles: 1
166 | softVegetation: 1
167 | realtimeReflectionProbes: 1
168 | billboardsFaceCameraPosition: 1
169 | vSyncCount: 1
170 | lodBias: 2
171 | maximumLODLevel: 0
172 | particleRaycastBudget: 4096
173 | asyncUploadTimeSlice: 2
174 | asyncUploadBufferSize: 16
175 | resolutionScalingFixedDPIFactor: 1
176 | excludedTargetPlatforms: []
177 | m_PerPlatformDefaultQuality:
178 | Android: 2
179 | Nintendo 3DS: 5
180 | Nintendo Switch: 5
181 | PS4: 5
182 | PSP2: 2
183 | Standalone: 5
184 | Tizen: 2
185 | WebGL: 3
186 | WiiU: 5
187 | Windows Store Apps: 5
188 | XboxOne: 5
189 | iPhone: 2
190 | tvOS: 2
191 |
--------------------------------------------------------------------------------
/ProjectSettings/InputManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!13 &1
4 | InputManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Axes:
8 | - serializedVersion: 3
9 | m_Name: Horizontal
10 | descriptiveName:
11 | descriptiveNegativeName:
12 | negativeButton: left
13 | positiveButton: right
14 | altNegativeButton: a
15 | altPositiveButton: d
16 | gravity: 3
17 | dead: 0.001
18 | sensitivity: 3
19 | snap: 1
20 | invert: 0
21 | type: 0
22 | axis: 0
23 | joyNum: 0
24 | - serializedVersion: 3
25 | m_Name: Vertical
26 | descriptiveName:
27 | descriptiveNegativeName:
28 | negativeButton: down
29 | positiveButton: up
30 | altNegativeButton: s
31 | altPositiveButton: w
32 | gravity: 3
33 | dead: 0.001
34 | sensitivity: 3
35 | snap: 1
36 | invert: 0
37 | type: 0
38 | axis: 0
39 | joyNum: 0
40 | - serializedVersion: 3
41 | m_Name: Fire1
42 | descriptiveName:
43 | descriptiveNegativeName:
44 | negativeButton:
45 | positiveButton: left ctrl
46 | altNegativeButton:
47 | altPositiveButton: mouse 0
48 | gravity: 1000
49 | dead: 0.001
50 | sensitivity: 1000
51 | snap: 0
52 | invert: 0
53 | type: 0
54 | axis: 0
55 | joyNum: 0
56 | - serializedVersion: 3
57 | m_Name: Fire2
58 | descriptiveName:
59 | descriptiveNegativeName:
60 | negativeButton:
61 | positiveButton: left alt
62 | altNegativeButton:
63 | altPositiveButton: mouse 1
64 | gravity: 1000
65 | dead: 0.001
66 | sensitivity: 1000
67 | snap: 0
68 | invert: 0
69 | type: 0
70 | axis: 0
71 | joyNum: 0
72 | - serializedVersion: 3
73 | m_Name: Fire3
74 | descriptiveName:
75 | descriptiveNegativeName:
76 | negativeButton:
77 | positiveButton: left shift
78 | altNegativeButton:
79 | altPositiveButton: mouse 2
80 | gravity: 1000
81 | dead: 0.001
82 | sensitivity: 1000
83 | snap: 0
84 | invert: 0
85 | type: 0
86 | axis: 0
87 | joyNum: 0
88 | - serializedVersion: 3
89 | m_Name: Jump
90 | descriptiveName:
91 | descriptiveNegativeName:
92 | negativeButton:
93 | positiveButton: space
94 | altNegativeButton:
95 | altPositiveButton:
96 | gravity: 1000
97 | dead: 0.001
98 | sensitivity: 1000
99 | snap: 0
100 | invert: 0
101 | type: 0
102 | axis: 0
103 | joyNum: 0
104 | - serializedVersion: 3
105 | m_Name: Mouse X
106 | descriptiveName:
107 | descriptiveNegativeName:
108 | negativeButton:
109 | positiveButton:
110 | altNegativeButton:
111 | altPositiveButton:
112 | gravity: 0
113 | dead: 0
114 | sensitivity: 0.1
115 | snap: 0
116 | invert: 0
117 | type: 1
118 | axis: 0
119 | joyNum: 0
120 | - serializedVersion: 3
121 | m_Name: Mouse Y
122 | descriptiveName:
123 | descriptiveNegativeName:
124 | negativeButton:
125 | positiveButton:
126 | altNegativeButton:
127 | altPositiveButton:
128 | gravity: 0
129 | dead: 0
130 | sensitivity: 0.1
131 | snap: 0
132 | invert: 0
133 | type: 1
134 | axis: 1
135 | joyNum: 0
136 | - serializedVersion: 3
137 | m_Name: Mouse ScrollWheel
138 | descriptiveName:
139 | descriptiveNegativeName:
140 | negativeButton:
141 | positiveButton:
142 | altNegativeButton:
143 | altPositiveButton:
144 | gravity: 0
145 | dead: 0
146 | sensitivity: 0.1
147 | snap: 0
148 | invert: 0
149 | type: 1
150 | axis: 2
151 | joyNum: 0
152 | - serializedVersion: 3
153 | m_Name: Horizontal
154 | descriptiveName:
155 | descriptiveNegativeName:
156 | negativeButton:
157 | positiveButton:
158 | altNegativeButton:
159 | altPositiveButton:
160 | gravity: 0
161 | dead: 0.19
162 | sensitivity: 1
163 | snap: 0
164 | invert: 0
165 | type: 2
166 | axis: 0
167 | joyNum: 0
168 | - serializedVersion: 3
169 | m_Name: Vertical
170 | descriptiveName:
171 | descriptiveNegativeName:
172 | negativeButton:
173 | positiveButton:
174 | altNegativeButton:
175 | altPositiveButton:
176 | gravity: 0
177 | dead: 0.19
178 | sensitivity: 1
179 | snap: 0
180 | invert: 1
181 | type: 2
182 | axis: 1
183 | joyNum: 0
184 | - serializedVersion: 3
185 | m_Name: Fire1
186 | descriptiveName:
187 | descriptiveNegativeName:
188 | negativeButton:
189 | positiveButton: joystick button 0
190 | altNegativeButton:
191 | altPositiveButton:
192 | gravity: 1000
193 | dead: 0.001
194 | sensitivity: 1000
195 | snap: 0
196 | invert: 0
197 | type: 0
198 | axis: 0
199 | joyNum: 0
200 | - serializedVersion: 3
201 | m_Name: Fire2
202 | descriptiveName:
203 | descriptiveNegativeName:
204 | negativeButton:
205 | positiveButton: joystick button 1
206 | altNegativeButton:
207 | altPositiveButton:
208 | gravity: 1000
209 | dead: 0.001
210 | sensitivity: 1000
211 | snap: 0
212 | invert: 0
213 | type: 0
214 | axis: 0
215 | joyNum: 0
216 | - serializedVersion: 3
217 | m_Name: Fire3
218 | descriptiveName:
219 | descriptiveNegativeName:
220 | negativeButton:
221 | positiveButton: joystick button 2
222 | altNegativeButton:
223 | altPositiveButton:
224 | gravity: 1000
225 | dead: 0.001
226 | sensitivity: 1000
227 | snap: 0
228 | invert: 0
229 | type: 0
230 | axis: 0
231 | joyNum: 0
232 | - serializedVersion: 3
233 | m_Name: Jump
234 | descriptiveName:
235 | descriptiveNegativeName:
236 | negativeButton:
237 | positiveButton: joystick button 3
238 | altNegativeButton:
239 | altPositiveButton:
240 | gravity: 1000
241 | dead: 0.001
242 | sensitivity: 1000
243 | snap: 0
244 | invert: 0
245 | type: 0
246 | axis: 0
247 | joyNum: 0
248 | - serializedVersion: 3
249 | m_Name: Submit
250 | descriptiveName:
251 | descriptiveNegativeName:
252 | negativeButton:
253 | positiveButton: return
254 | altNegativeButton:
255 | altPositiveButton: joystick button 0
256 | gravity: 1000
257 | dead: 0.001
258 | sensitivity: 1000
259 | snap: 0
260 | invert: 0
261 | type: 0
262 | axis: 0
263 | joyNum: 0
264 | - serializedVersion: 3
265 | m_Name: Submit
266 | descriptiveName:
267 | descriptiveNegativeName:
268 | negativeButton:
269 | positiveButton: enter
270 | altNegativeButton:
271 | altPositiveButton: space
272 | gravity: 1000
273 | dead: 0.001
274 | sensitivity: 1000
275 | snap: 0
276 | invert: 0
277 | type: 0
278 | axis: 0
279 | joyNum: 0
280 | - serializedVersion: 3
281 | m_Name: Cancel
282 | descriptiveName:
283 | descriptiveNegativeName:
284 | negativeButton:
285 | positiveButton: escape
286 | altNegativeButton:
287 | altPositiveButton: joystick button 1
288 | gravity: 1000
289 | dead: 0.001
290 | sensitivity: 1000
291 | snap: 0
292 | invert: 0
293 | type: 0
294 | axis: 0
295 | joyNum: 0
296 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableList/ReorderableList.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using UnityEditor;
3 |
4 | namespace Mochineko.SimpleReorderableList
5 | {
6 | ///
7 | /// Supplies an easily usable reorderable list on editor.
8 | ///
9 | public class ReorderableList
10 | {
11 |
12 | #region Settings
13 |
14 | ///
15 | /// Native reorderable list.
16 | ///
17 | public UnityEditorInternal.ReorderableList Native { get; protected set; }
18 |
19 | ///
20 | /// Uses foldout or not.
21 | ///
22 | protected bool UseFoldout { get; set; } = true;
23 |
24 | #endregion
25 |
26 | #region Serialized Property
27 |
28 | ///
29 | /// of the source list.
30 | ///
31 | protected SerializedProperty SourceProperty { get; set; }
32 |
33 | ///
34 | /// Gets of the element at the index.
35 | ///
36 | ///
37 | ///
38 | protected SerializedProperty ElementPropertyAt(int index)
39 | => SourceProperty.GetArrayElementAtIndex(index);
40 |
41 | ///
42 | /// Gets display name of the source list.
43 | ///
44 | protected string DisplayName
45 | => SourceProperty.displayName;
46 |
47 | ///
48 | /// The source property is folded out or not.
49 | ///
50 | protected bool IsFoldedOut
51 | {
52 | get
53 | {
54 | return SourceProperty.isExpanded;
55 | }
56 | set
57 | {
58 | SourceProperty.isExpanded = value;
59 | }
60 | }
61 |
62 | #endregion
63 |
64 | #region Set Up
65 |
66 | ///
67 | /// Easy constructor.
68 | ///
69 | ///
70 | ///
71 | public ReorderableList(
72 | SerializedProperty sourceProperty,
73 | bool useFoldout = true)
74 | {
75 | if (sourceProperty == null)
76 | throw new System.ArgumentNullException("listProperty");
77 |
78 | this.SourceProperty = sourceProperty;
79 | this.UseFoldout = useFoldout;
80 |
81 | InitializeNative(sourceProperty);
82 |
83 | InitializeReadyMadeDrawers();
84 | }
85 |
86 | ///
87 | /// Constructor for customizable developpers.
88 | ///
89 | /// The source list property
90 | /// Native options of reorderable list about functions.
91 | /// Drawer options which are ready made.
92 | public ReorderableList(
93 | SerializedProperty sourceProperty,
94 | NativeFunctionOptions nativeOptions,
95 | ReadyMadeDrawerOptions drawerOptions,
96 | bool useFoldout = true)
97 | {
98 | if (sourceProperty == null)
99 | throw new System.ArgumentNullException("listProperty");
100 |
101 | this.SourceProperty = sourceProperty;
102 | this.UseFoldout = useFoldout;
103 |
104 | InitializeNative(sourceProperty, nativeOptions);
105 |
106 | InitializeReadyMadeDrawers(drawerOptions);
107 | }
108 |
109 | ///
110 | /// Constructor for customizable developpers.
111 | ///
112 | ///
113 | ///
114 | ///
115 | public ReorderableList(
116 | SerializedProperty sourceProperty,
117 | NativeFunctionOptions nativeOptions,
118 | bool useFoldout = true)
119 | {
120 | if (sourceProperty == null)
121 | throw new System.ArgumentNullException("listProperty");
122 |
123 | this.SourceProperty = sourceProperty;
124 | this.UseFoldout = useFoldout;
125 |
126 | InitializeNative(sourceProperty, nativeOptions);
127 |
128 | InitializeReadyMadeDrawers();
129 | }
130 | ///
131 | /// Constructor for customizable developpers.
132 | ///
133 | ///
134 | ///
135 | ///
136 | public ReorderableList(
137 | SerializedProperty sourceProperty,
138 | ReadyMadeDrawerOptions drawerOptions,
139 | bool useFoldout = true)
140 | {
141 | if (sourceProperty == null)
142 | throw new System.ArgumentNullException("listProperty");
143 |
144 | this.SourceProperty = sourceProperty;
145 | this.UseFoldout = useFoldout;
146 |
147 | InitializeNative(sourceProperty);
148 |
149 | InitializeReadyMadeDrawers(drawerOptions);
150 | }
151 |
152 | ///
153 | /// Initialize native reorderable list.
154 | ///
155 | ///
156 | protected virtual void InitializeNative(SerializedProperty listProperty)
157 | {
158 | InitializeNative(listProperty, NativeFunctionOptions.Default);
159 | }
160 | ///
161 | /// Initialize native reorderable list by .
162 | ///
163 | ///
164 | ///
165 | protected virtual void InitializeNative(SerializedProperty listProperty, NativeFunctionOptions options)
166 | {
167 | Native = new UnityEditorInternal.ReorderableList(
168 | listProperty.serializedObject,
169 | listProperty,
170 | options.Draggable,
171 | options.DisplayHeader,
172 | options.DisplayAddButton,
173 | options.DisplayRemoveButton
174 | );
175 | }
176 |
177 | ///
178 | /// Initialize ready made drawers.
179 | ///
180 | public virtual void InitializeReadyMadeDrawers()
181 | => InitializeReadyMadeDrawers(ReadyMadeDrawerOptions.Default);
182 | ///
183 | /// Initialize ready made drawers by .
184 | ///
185 | ///
186 | public virtual void InitializeReadyMadeDrawers(ReadyMadeDrawerOptions options)
187 | {
188 | if (options.UseReadyMadeHeader)
189 | AddDrawHeaderCallback();
190 |
191 | if (options.UseReadyMadeElement)
192 | AddDrawElementPropertyCallback();
193 |
194 | if (options.UseReadyMadeBackground)
195 | AddDrawElementBackgroundCallback();
196 | }
197 |
198 | #endregion
199 |
200 | #region Layout
201 |
202 | ///
203 | /// Layouts field of reorderable list.
204 | /// Please call this at .
205 | ///
206 | public virtual void Layout()
207 | {
208 | if (Native == null)
209 | return;
210 |
211 | if (!UseFoldout)
212 | Native.DoLayoutList();
213 | else
214 | LayoutWithFoldOut();
215 | }
216 |
217 | ///
218 | /// Layouts field of reorderable list with foldout.
219 | /// Please call this at .
220 | ///
221 | protected virtual void LayoutWithFoldOut()
222 | {
223 | IsFoldedOut = EditorGUILayout.Foldout(IsFoldedOut, DisplayName);
224 |
225 | if (!IsFoldedOut)
226 | return;
227 |
228 | Native.DoLayoutList();
229 | }
230 |
231 | #endregion
232 |
233 | #region Header
234 |
235 | ///
236 | /// Adds drwa header callback by default label.
237 | ///
238 | public virtual void AddDrawHeaderCallback()
239 | {
240 | if (Native == null)
241 | return;
242 |
243 | Native.drawHeaderCallback += DrawHeader;
244 | }
245 | ///
246 | /// Adds drwa header callback by .
247 | ///
248 | ///
249 | public virtual void AddDrawHeaderCallback(string label)
250 | {
251 | if (Native == null)
252 | return;
253 |
254 | Native.drawHeaderCallback += (rect) => DrawHeader(rect, label);
255 | }
256 |
257 | ///
258 | /// Drwas header at by default label.
259 | ///
260 | ///
261 | protected virtual void DrawHeader(Rect rect)
262 | {
263 | EditorGUI.LabelField(rect, DisplayName);
264 | }
265 | ///
266 | /// Drwas header at by .
267 | ///
268 | ///
269 | ///
270 | protected virtual void DrawHeader(Rect rect, string label)
271 | {
272 | EditorGUI.LabelField(rect, label);
273 | }
274 |
275 | #endregion
276 |
277 | #region Property
278 |
279 | ///
280 | /// Adds draw element property callback.
281 | ///
282 | public void AddDrawElementPropertyCallback()
283 | {
284 | if (Native == null)
285 | return;
286 |
287 | Native.drawElementCallback += DrawProperty;
288 | Native.elementHeightCallback += ElementHeight;
289 | }
290 |
291 | ///
292 | /// Draws a property of at .
293 | ///
294 | ///
295 | ///
296 | ///
297 | ///
298 | protected virtual void DrawProperty(Rect rect, int index, bool isActive, bool isFocused)
299 | => DrawProperty(rect, ElementPropertyAt(index));
300 | ///
301 | /// Draws at .
302 | ///
303 | ///
304 | ///
305 | protected virtual void DrawProperty(Rect rect, SerializedProperty property)
306 | {
307 | if (property == null)
308 | return;
309 |
310 | EditorGUI.PropertyField(
311 | LayoutUtility.AdjustedRect(rect, property),
312 | property,
313 | true
314 | );
315 | }
316 |
317 | ///
318 | /// Calculates height of an element at .
319 | ///
320 | ///
321 | ///
322 | protected virtual float ElementHeight(int index)
323 | => LayoutUtility.ElementHeight(ElementPropertyAt(index));
324 |
325 | #endregion
326 |
327 | #region Background
328 |
329 | ///
330 | /// Adds alternative draw element background callback.
331 | ///
332 | public void AddDrawElementBackgroundCallback()
333 | {
334 | if (Native == null)
335 | return;
336 |
337 | Native.drawElementBackgroundCallback +=
338 | (Rect rect, int index, bool isActive, bool isFocused)
339 | => DrawElementBackgroundAlternatively(rect, index, isActive, isFocused);
340 | }
341 |
342 | ///
343 | /// Draws element background alternatively for readability at .
344 | ///
345 | ///
346 | ///
347 | ///
348 | ///
349 | protected virtual void DrawElementBackgroundAlternatively(Rect rect, int index, bool isActive, bool isFocused)
350 | {
351 | // selected element
352 | if (isFocused)
353 | {
354 | DrawActiveColor(rect);
355 | return;
356 | }
357 |
358 | // odd element
359 | if (index % 2 != 0)
360 | {
361 | // draw default background color
362 | return;
363 | }
364 |
365 | // draw dirrerent background color
366 | DrawDifferentBackgroundColor(rect);
367 | }
368 |
369 | ///
370 | /// Draws active color background at .
371 | ///
372 | ///
373 | protected virtual void DrawActiveColor(Rect rect)
374 | {
375 | BackgroundUtility.DrawElementBackgroundColorActive(rect);
376 | }
377 |
378 | ///
379 | /// Draws active color background at .
380 | ///
381 | ///
382 | protected virtual void DrawDifferentBackgroundColor(Rect rect)
383 | {
384 | BackgroundUtility.DrawElementBackgroundColorDifferent(rect);
385 | }
386 |
387 | #endregion
388 |
389 | #region Drop Down
390 |
391 | ///
392 | /// Adds drop down callback with canditate names and selected callback.
393 | ///
394 | ///
395 | ///
396 | public virtual void AddDrawDropDownCallback(string[] canditateNames, System.Action OnSelected)
397 | {
398 | if (Native == null)
399 | return;
400 |
401 | Native.onAddDropdownCallback += (rect, list)
402 | => DrawDropDown(rect, canditateNames, OnSelected);
403 | }
404 |
405 | ///
406 | /// Draw drop down menu at with and reaction.
407 | ///
408 | ///
409 | ///
410 | ///
411 | protected virtual void DrawDropDown(Rect rect, string[] canditateNames, System.Action OnSelected)
412 | {
413 | var menu = new GenericMenu();
414 |
415 | foreach (var name in canditateNames)
416 | menu.AddItem(new GUIContent(name), false, () => OnSelected?.Invoke(name));
417 |
418 | menu.DropDown(rect);
419 | }
420 |
421 | #endregion
422 |
423 | }
424 | }
425 |
--------------------------------------------------------------------------------
/Assets/Mochineko/SimpleReorderableListSamples/SampleScene.unity:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!29 &1
4 | OcclusionCullingSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_OcclusionBakeSettings:
8 | smallestOccluder: 5
9 | smallestHole: 0.25
10 | backfaceThreshold: 100
11 | m_SceneGUID: 00000000000000000000000000000000
12 | m_OcclusionCullingData: {fileID: 0}
13 | --- !u!104 &2
14 | RenderSettings:
15 | m_ObjectHideFlags: 0
16 | serializedVersion: 9
17 | m_Fog: 0
18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
19 | m_FogMode: 3
20 | m_FogDensity: 0.01
21 | m_LinearFogStart: 0
22 | m_LinearFogEnd: 300
23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
26 | m_AmbientIntensity: 1
27 | m_AmbientMode: 0
28 | m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
29 | m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
30 | m_HaloStrength: 0.5
31 | m_FlareStrength: 1
32 | m_FlareFadeSpeed: 3
33 | m_HaloTexture: {fileID: 0}
34 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
35 | m_DefaultReflectionMode: 0
36 | m_DefaultReflectionResolution: 128
37 | m_ReflectionBounces: 1
38 | m_ReflectionIntensity: 1
39 | m_CustomReflection: {fileID: 0}
40 | m_Sun: {fileID: 0}
41 | m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
42 | m_UseRadianceAmbientProbe: 0
43 | --- !u!157 &3
44 | LightmapSettings:
45 | m_ObjectHideFlags: 0
46 | serializedVersion: 11
47 | m_GIWorkflowMode: 1
48 | m_GISettings:
49 | serializedVersion: 2
50 | m_BounceScale: 1
51 | m_IndirectOutputScale: 1
52 | m_AlbedoBoost: 1
53 | m_EnvironmentLightingMode: 0
54 | m_EnableBakedLightmaps: 1
55 | m_EnableRealtimeLightmaps: 1
56 | m_LightmapEditorSettings:
57 | serializedVersion: 12
58 | m_Resolution: 2
59 | m_BakeResolution: 40
60 | m_AtlasSize: 1024
61 | m_AO: 0
62 | m_AOMaxDistance: 1
63 | m_CompAOExponent: 1
64 | m_CompAOExponentDirect: 0
65 | m_ExtractAmbientOcclusion: 0
66 | m_Padding: 2
67 | m_LightmapParameters: {fileID: 0}
68 | m_LightmapsBakeMode: 1
69 | m_TextureCompression: 1
70 | m_FinalGather: 0
71 | m_FinalGatherFiltering: 1
72 | m_FinalGatherRayCount: 256
73 | m_ReflectionCompression: 2
74 | m_MixedBakeMode: 2
75 | m_BakeBackend: 1
76 | m_PVRSampling: 1
77 | m_PVRDirectSampleCount: 32
78 | m_PVRSampleCount: 512
79 | m_PVRBounces: 2
80 | m_PVREnvironmentSampleCount: 256
81 | m_PVREnvironmentReferencePointCount: 2048
82 | m_PVRFilteringMode: 1
83 | m_PVRDenoiserTypeDirect: 1
84 | m_PVRDenoiserTypeIndirect: 1
85 | m_PVRDenoiserTypeAO: 1
86 | m_PVRFilterTypeDirect: 0
87 | m_PVRFilterTypeIndirect: 0
88 | m_PVRFilterTypeAO: 0
89 | m_PVREnvironmentMIS: 1
90 | m_PVRCulling: 1
91 | m_PVRFilteringGaussRadiusDirect: 1
92 | m_PVRFilteringGaussRadiusIndirect: 5
93 | m_PVRFilteringGaussRadiusAO: 2
94 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
95 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
96 | m_PVRFilteringAtrousPositionSigmaAO: 1
97 | m_ShowResolutionOverlay: 1
98 | m_ExportTrainingData: 0
99 | m_LightingDataAsset: {fileID: 0}
100 | m_UseShadowmask: 1
101 | --- !u!196 &4
102 | NavMeshSettings:
103 | serializedVersion: 2
104 | m_ObjectHideFlags: 0
105 | m_BuildSettings:
106 | serializedVersion: 2
107 | agentTypeID: 0
108 | agentRadius: 0.5
109 | agentHeight: 2
110 | agentSlope: 45
111 | agentClimb: 0.4
112 | ledgeDropHeight: 0
113 | maxJumpAcrossDistance: 0
114 | minRegionArea: 2
115 | manualCellSize: 0
116 | cellSize: 0.16666667
117 | manualTileSize: 0
118 | tileSize: 256
119 | accuratePlacement: 0
120 | debug:
121 | m_Flags: 0
122 | m_NavMeshData: {fileID: 0}
123 | --- !u!1 &155913138
124 | GameObject:
125 | m_ObjectHideFlags: 0
126 | m_CorrespondingSourceObject: {fileID: 0}
127 | m_PrefabInstance: {fileID: 0}
128 | m_PrefabAsset: {fileID: 0}
129 | serializedVersion: 6
130 | m_Component:
131 | - component: {fileID: 155913140}
132 | - component: {fileID: 155913139}
133 | m_Layer: 0
134 | m_Name: NestedMultiPropertySample
135 | m_TagString: Untagged
136 | m_Icon: {fileID: 0}
137 | m_NavMeshLayer: 0
138 | m_StaticEditorFlags: 0
139 | m_IsActive: 1
140 | --- !u!114 &155913139
141 | MonoBehaviour:
142 | m_ObjectHideFlags: 0
143 | m_CorrespondingSourceObject: {fileID: 0}
144 | m_PrefabInstance: {fileID: 0}
145 | m_PrefabAsset: {fileID: 0}
146 | m_GameObject: {fileID: 155913138}
147 | m_Enabled: 1
148 | m_EditorHideFlags: 0
149 | m_Script: {fileID: 11500000, guid: ebeb0e9b143ca714aa2469deda2db9a4, type: 3}
150 | m_Name:
151 | m_EditorClassIdentifier:
152 | list:
153 | - rect:
154 | serializedVersion: 2
155 | x: 0
156 | y: 0
157 | width: 0
158 | height: 0
159 | bounds:
160 | m_Center: {x: 0, y: 0, z: 0}
161 | m_Extent: {x: 0, y: 0, z: 0}
162 | rotation: {x: 0, y: 0, z: 0, w: 0}
163 | vector: {x: 0, y: 0, z: 0, w: 0}
164 | labels:
165 | -
166 | -
167 | - rect:
168 | serializedVersion: 2
169 | x: 0
170 | y: 0
171 | width: 0
172 | height: 0
173 | bounds:
174 | m_Center: {x: 0, y: 0, z: 0}
175 | m_Extent: {x: 0, y: 0, z: 0}
176 | rotation: {x: 0, y: 0, z: 0, w: 0}
177 | vector: {x: 0, y: 0, z: 0, w: 0}
178 | labels:
179 | -
180 | -
181 | -
182 | -
183 | - rect:
184 | serializedVersion: 2
185 | x: 0
186 | y: 0
187 | width: 0
188 | height: 0
189 | bounds:
190 | m_Center: {x: 0, y: 0, z: 0}
191 | m_Extent: {x: 0, y: 0, z: 0}
192 | rotation: {x: 0, y: 0, z: 0, w: 0}
193 | vector: {x: 0, y: 0, z: 0, w: 0}
194 | labels:
195 | -
196 | -
197 | -
198 | -
199 | text:
200 | --- !u!4 &155913140
201 | Transform:
202 | m_ObjectHideFlags: 0
203 | m_CorrespondingSourceObject: {fileID: 0}
204 | m_PrefabInstance: {fileID: 0}
205 | m_PrefabAsset: {fileID: 0}
206 | m_GameObject: {fileID: 155913138}
207 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
208 | m_LocalPosition: {x: 0, y: 0, z: 0}
209 | m_LocalScale: {x: 1, y: 1, z: 1}
210 | m_Children: []
211 | m_Father: {fileID: 0}
212 | m_RootOrder: 4
213 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
214 | --- !u!1 &205271333
215 | GameObject:
216 | m_ObjectHideFlags: 0
217 | m_CorrespondingSourceObject: {fileID: 0}
218 | m_PrefabInstance: {fileID: 0}
219 | m_PrefabAsset: {fileID: 0}
220 | serializedVersion: 6
221 | m_Component:
222 | - component: {fileID: 205271335}
223 | - component: {fileID: 205271334}
224 | m_Layer: 0
225 | m_Name: Directional Light
226 | m_TagString: Untagged
227 | m_Icon: {fileID: 0}
228 | m_NavMeshLayer: 0
229 | m_StaticEditorFlags: 0
230 | m_IsActive: 1
231 | --- !u!108 &205271334
232 | Light:
233 | m_ObjectHideFlags: 0
234 | m_CorrespondingSourceObject: {fileID: 0}
235 | m_PrefabInstance: {fileID: 0}
236 | m_PrefabAsset: {fileID: 0}
237 | m_GameObject: {fileID: 205271333}
238 | m_Enabled: 1
239 | serializedVersion: 9
240 | m_Type: 1
241 | m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
242 | m_Intensity: 1
243 | m_Range: 10
244 | m_SpotAngle: 30
245 | m_InnerSpotAngle: 21.80208
246 | m_CookieSize: 10
247 | m_Shadows:
248 | m_Type: 2
249 | m_Resolution: -1
250 | m_CustomResolution: -1
251 | m_Strength: 1
252 | m_Bias: 0.05
253 | m_NormalBias: 0.4
254 | m_NearPlane: 0.2
255 | m_CullingMatrixOverride:
256 | e00: 1
257 | e01: 0
258 | e02: 0
259 | e03: 0
260 | e10: 0
261 | e11: 1
262 | e12: 0
263 | e13: 0
264 | e20: 0
265 | e21: 0
266 | e22: 1
267 | e23: 0
268 | e30: 0
269 | e31: 0
270 | e32: 0
271 | e33: 1
272 | m_UseCullingMatrixOverride: 0
273 | m_Cookie: {fileID: 0}
274 | m_DrawHalo: 0
275 | m_Flare: {fileID: 0}
276 | m_RenderMode: 0
277 | m_CullingMask:
278 | serializedVersion: 2
279 | m_Bits: 4294967295
280 | m_RenderingLayerMask: 1
281 | m_Lightmapping: 4
282 | m_LightShadowCasterMode: 0
283 | m_AreaSize: {x: 1, y: 1}
284 | m_BounceIntensity: 1
285 | m_ColorTemperature: 6570
286 | m_UseColorTemperature: 0
287 | m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
288 | m_UseBoundingSphereOverride: 0
289 | m_ShadowRadius: 0
290 | m_ShadowAngle: 0
291 | --- !u!4 &205271335
292 | Transform:
293 | m_ObjectHideFlags: 0
294 | m_CorrespondingSourceObject: {fileID: 0}
295 | m_PrefabInstance: {fileID: 0}
296 | m_PrefabAsset: {fileID: 0}
297 | m_GameObject: {fileID: 205271333}
298 | m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
299 | m_LocalPosition: {x: 0, y: 3, z: 0}
300 | m_LocalScale: {x: 1, y: 1, z: 1}
301 | m_Children: []
302 | m_Father: {fileID: 0}
303 | m_RootOrder: 1
304 | m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
305 | --- !u!1 &467710368
306 | GameObject:
307 | m_ObjectHideFlags: 0
308 | m_CorrespondingSourceObject: {fileID: 0}
309 | m_PrefabInstance: {fileID: 0}
310 | m_PrefabAsset: {fileID: 0}
311 | serializedVersion: 6
312 | m_Component:
313 | - component: {fileID: 467710371}
314 | - component: {fileID: 467710370}
315 | - component: {fileID: 467710369}
316 | m_Layer: 0
317 | m_Name: Main Camera
318 | m_TagString: MainCamera
319 | m_Icon: {fileID: 0}
320 | m_NavMeshLayer: 0
321 | m_StaticEditorFlags: 0
322 | m_IsActive: 1
323 | --- !u!81 &467710369
324 | AudioListener:
325 | m_ObjectHideFlags: 0
326 | m_CorrespondingSourceObject: {fileID: 0}
327 | m_PrefabInstance: {fileID: 0}
328 | m_PrefabAsset: {fileID: 0}
329 | m_GameObject: {fileID: 467710368}
330 | m_Enabled: 1
331 | --- !u!20 &467710370
332 | Camera:
333 | m_ObjectHideFlags: 0
334 | m_CorrespondingSourceObject: {fileID: 0}
335 | m_PrefabInstance: {fileID: 0}
336 | m_PrefabAsset: {fileID: 0}
337 | m_GameObject: {fileID: 467710368}
338 | m_Enabled: 1
339 | serializedVersion: 2
340 | m_ClearFlags: 1
341 | m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
342 | m_projectionMatrixMode: 1
343 | m_GateFitMode: 2
344 | m_FOVAxisMode: 0
345 | m_SensorSize: {x: 36, y: 24}
346 | m_LensShift: {x: 0, y: 0}
347 | m_FocalLength: 50
348 | m_NormalizedViewPortRect:
349 | serializedVersion: 2
350 | x: 0
351 | y: 0
352 | width: 1
353 | height: 1
354 | near clip plane: 0.3
355 | far clip plane: 1000
356 | field of view: 60
357 | orthographic: 0
358 | orthographic size: 5
359 | m_Depth: -1
360 | m_CullingMask:
361 | serializedVersion: 2
362 | m_Bits: 4294967295
363 | m_RenderingPath: -1
364 | m_TargetTexture: {fileID: 0}
365 | m_TargetDisplay: 0
366 | m_TargetEye: 3
367 | m_HDR: 1
368 | m_AllowMSAA: 1
369 | m_AllowDynamicResolution: 0
370 | m_ForceIntoRT: 0
371 | m_OcclusionCulling: 1
372 | m_StereoConvergence: 10
373 | m_StereoSeparation: 0.022
374 | --- !u!4 &467710371
375 | Transform:
376 | m_ObjectHideFlags: 0
377 | m_CorrespondingSourceObject: {fileID: 0}
378 | m_PrefabInstance: {fileID: 0}
379 | m_PrefabAsset: {fileID: 0}
380 | m_GameObject: {fileID: 467710368}
381 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
382 | m_LocalPosition: {x: 0, y: 1, z: -10}
383 | m_LocalScale: {x: 1, y: 1, z: 1}
384 | m_Children: []
385 | m_Father: {fileID: 0}
386 | m_RootOrder: 0
387 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
388 | --- !u!1 &1245565291
389 | GameObject:
390 | m_ObjectHideFlags: 0
391 | m_CorrespondingSourceObject: {fileID: 0}
392 | m_PrefabInstance: {fileID: 0}
393 | m_PrefabAsset: {fileID: 0}
394 | serializedVersion: 6
395 | m_Component:
396 | - component: {fileID: 1245565293}
397 | - component: {fileID: 1245565292}
398 | m_Layer: 0
399 | m_Name: FullyFixedSample
400 | m_TagString: Untagged
401 | m_Icon: {fileID: 0}
402 | m_NavMeshLayer: 0
403 | m_StaticEditorFlags: 0
404 | m_IsActive: 1
405 | --- !u!114 &1245565292
406 | MonoBehaviour:
407 | m_ObjectHideFlags: 0
408 | m_CorrespondingSourceObject: {fileID: 0}
409 | m_PrefabInstance: {fileID: 0}
410 | m_PrefabAsset: {fileID: 0}
411 | m_GameObject: {fileID: 1245565291}
412 | m_Enabled: 1
413 | m_EditorHideFlags: 0
414 | m_Script: {fileID: 11500000, guid: 8843b8b82dc17b14b9236b6b7f0bd168, type: 3}
415 | m_Name:
416 | m_EditorClassIdentifier:
417 | texts:
418 | - A
419 | - B
420 | - C
421 | - D
422 | - E
423 | --- !u!4 &1245565293
424 | Transform:
425 | m_ObjectHideFlags: 0
426 | m_CorrespondingSourceObject: {fileID: 0}
427 | m_PrefabInstance: {fileID: 0}
428 | m_PrefabAsset: {fileID: 0}
429 | m_GameObject: {fileID: 1245565291}
430 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
431 | m_LocalPosition: {x: 0, y: 0, z: 0}
432 | m_LocalScale: {x: 1, y: 1, z: 1}
433 | m_Children: []
434 | m_Father: {fileID: 0}
435 | m_RootOrder: 7
436 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
437 | --- !u!1 &1294472177
438 | GameObject:
439 | m_ObjectHideFlags: 0
440 | m_CorrespondingSourceObject: {fileID: 0}
441 | m_PrefabInstance: {fileID: 0}
442 | m_PrefabAsset: {fileID: 0}
443 | serializedVersion: 6
444 | m_Component:
445 | - component: {fileID: 1294472179}
446 | - component: {fileID: 1294472178}
447 | m_Layer: 0
448 | m_Name: FixedElementCountSample
449 | m_TagString: Untagged
450 | m_Icon: {fileID: 0}
451 | m_NavMeshLayer: 0
452 | m_StaticEditorFlags: 0
453 | m_IsActive: 1
454 | --- !u!114 &1294472178
455 | MonoBehaviour:
456 | m_ObjectHideFlags: 0
457 | m_CorrespondingSourceObject: {fileID: 0}
458 | m_PrefabInstance: {fileID: 0}
459 | m_PrefabAsset: {fileID: 0}
460 | m_GameObject: {fileID: 1294472177}
461 | m_Enabled: 1
462 | m_EditorHideFlags: 0
463 | m_Script: {fileID: 11500000, guid: ae4c333d45a5b7d4daea26dbd42f8645, type: 3}
464 | m_Name:
465 | m_EditorClassIdentifier:
466 | texts:
467 | -
468 | -
469 | -
470 | -
471 | -
472 | --- !u!4 &1294472179
473 | Transform:
474 | m_ObjectHideFlags: 0
475 | m_CorrespondingSourceObject: {fileID: 0}
476 | m_PrefabInstance: {fileID: 0}
477 | m_PrefabAsset: {fileID: 0}
478 | m_GameObject: {fileID: 1294472177}
479 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
480 | m_LocalPosition: {x: 0, y: 0, z: 0}
481 | m_LocalScale: {x: 1, y: 1, z: 1}
482 | m_Children: []
483 | m_Father: {fileID: 0}
484 | m_RootOrder: 5
485 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
486 | --- !u!1 &1653830222
487 | GameObject:
488 | m_ObjectHideFlags: 0
489 | m_CorrespondingSourceObject: {fileID: 0}
490 | m_PrefabInstance: {fileID: 0}
491 | m_PrefabAsset: {fileID: 0}
492 | serializedVersion: 6
493 | m_Component:
494 | - component: {fileID: 1653830224}
495 | - component: {fileID: 1653830223}
496 | m_Layer: 0
497 | m_Name: DropDownSample
498 | m_TagString: Untagged
499 | m_Icon: {fileID: 0}
500 | m_NavMeshLayer: 0
501 | m_StaticEditorFlags: 0
502 | m_IsActive: 1
503 | --- !u!114 &1653830223
504 | MonoBehaviour:
505 | m_ObjectHideFlags: 0
506 | m_CorrespondingSourceObject: {fileID: 0}
507 | m_PrefabInstance: {fileID: 0}
508 | m_PrefabAsset: {fileID: 0}
509 | m_GameObject: {fileID: 1653830222}
510 | m_Enabled: 1
511 | m_EditorHideFlags: 0
512 | m_Script: {fileID: 11500000, guid: 5f91c8a38c3bd404a8c620271cce3d9c, type: 3}
513 | m_Name:
514 | m_EditorClassIdentifier:
515 | humans:
516 | - name:
517 | bloodType: A
518 | - name:
519 | bloodType: B
520 | - name:
521 | bloodType: AB
522 | --- !u!4 &1653830224
523 | Transform:
524 | m_ObjectHideFlags: 0
525 | m_CorrespondingSourceObject: {fileID: 0}
526 | m_PrefabInstance: {fileID: 0}
527 | m_PrefabAsset: {fileID: 0}
528 | m_GameObject: {fileID: 1653830222}
529 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
530 | m_LocalPosition: {x: 0, y: 0, z: 0}
531 | m_LocalScale: {x: 1, y: 1, z: 1}
532 | m_Children: []
533 | m_Father: {fileID: 0}
534 | m_RootOrder: 6
535 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
536 | --- !u!1 &1670910514
537 | GameObject:
538 | m_ObjectHideFlags: 0
539 | m_CorrespondingSourceObject: {fileID: 0}
540 | m_PrefabInstance: {fileID: 0}
541 | m_PrefabAsset: {fileID: 0}
542 | serializedVersion: 6
543 | m_Component:
544 | - component: {fileID: 1670910516}
545 | - component: {fileID: 1670910515}
546 | m_Layer: 0
547 | m_Name: MultiPropertySample
548 | m_TagString: Untagged
549 | m_Icon: {fileID: 0}
550 | m_NavMeshLayer: 0
551 | m_StaticEditorFlags: 0
552 | m_IsActive: 1
553 | --- !u!114 &1670910515
554 | MonoBehaviour:
555 | m_ObjectHideFlags: 0
556 | m_CorrespondingSourceObject: {fileID: 0}
557 | m_PrefabInstance: {fileID: 0}
558 | m_PrefabAsset: {fileID: 0}
559 | m_GameObject: {fileID: 1670910514}
560 | m_Enabled: 1
561 | m_EditorHideFlags: 0
562 | m_Script: {fileID: 11500000, guid: 41deb4bea6cfe0249a18d5ff10c77289, type: 3}
563 | m_Name:
564 | m_EditorClassIdentifier:
565 | list:
566 | - label: ddd
567 | activity: 0
568 | position: {x: 0, y: 0, z: 0}
569 | - label: fffff
570 | activity: 1
571 | position: {x: 0, y: 0, z: 0}
572 | - label: asd
573 | activity: 1
574 | position: {x: 0, y: 0, z: 0}
575 | - label: asd
576 | activity: 1
577 | position: {x: 0, y: 0, z: 0}
578 | - label: asd
579 | activity: 1
580 | position: {x: 0, y: 0, z: 0}
581 | --- !u!4 &1670910516
582 | Transform:
583 | m_ObjectHideFlags: 0
584 | m_CorrespondingSourceObject: {fileID: 0}
585 | m_PrefabInstance: {fileID: 0}
586 | m_PrefabAsset: {fileID: 0}
587 | m_GameObject: {fileID: 1670910514}
588 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
589 | m_LocalPosition: {x: 0, y: 0, z: 0}
590 | m_LocalScale: {x: 1, y: 1, z: 1}
591 | m_Children: []
592 | m_Father: {fileID: 0}
593 | m_RootOrder: 3
594 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
595 | --- !u!1 &1949796061
596 | GameObject:
597 | m_ObjectHideFlags: 0
598 | m_CorrespondingSourceObject: {fileID: 0}
599 | m_PrefabInstance: {fileID: 0}
600 | m_PrefabAsset: {fileID: 0}
601 | serializedVersion: 6
602 | m_Component:
603 | - component: {fileID: 1949796063}
604 | - component: {fileID: 1949796062}
605 | m_Layer: 0
606 | m_Name: SinglePropertySample
607 | m_TagString: Untagged
608 | m_Icon: {fileID: 0}
609 | m_NavMeshLayer: 0
610 | m_StaticEditorFlags: 0
611 | m_IsActive: 1
612 | --- !u!114 &1949796062
613 | MonoBehaviour:
614 | m_ObjectHideFlags: 0
615 | m_CorrespondingSourceObject: {fileID: 0}
616 | m_PrefabInstance: {fileID: 0}
617 | m_PrefabAsset: {fileID: 0}
618 | m_GameObject: {fileID: 1949796061}
619 | m_Enabled: 1
620 | m_EditorHideFlags: 0
621 | m_Script: {fileID: 11500000, guid: 4162939a6c84ac64a8b9b1083ca0f257, type: 3}
622 | m_Name:
623 | m_EditorClassIdentifier:
624 | texts:
625 | - A
626 | - B
627 | - C
628 | - E
629 | --- !u!4 &1949796063
630 | Transform:
631 | m_ObjectHideFlags: 0
632 | m_CorrespondingSourceObject: {fileID: 0}
633 | m_PrefabInstance: {fileID: 0}
634 | m_PrefabAsset: {fileID: 0}
635 | m_GameObject: {fileID: 1949796061}
636 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
637 | m_LocalPosition: {x: 0, y: 0, z: 0}
638 | m_LocalScale: {x: 1, y: 1, z: 1}
639 | m_Children: []
640 | m_Father: {fileID: 0}
641 | m_RootOrder: 2
642 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
643 |
--------------------------------------------------------------------------------
/ProjectSettings/ProjectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!129 &1
4 | PlayerSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 16
7 | productGUID: 3b6e14ccdcfdba549bb40af04e48a334
8 | AndroidProfiler: 0
9 | AndroidFilterTouchesWhenObscured: 0
10 | AndroidEnableSustainedPerformanceMode: 0
11 | defaultScreenOrientation: 4
12 | targetDevice: 2
13 | useOnDemandResources: 0
14 | accelerometerFrequency: 60
15 | companyName: DefaultCompany
16 | productName: reorderable-list
17 | defaultCursor: {fileID: 0}
18 | cursorHotspot: {x: 0, y: 0}
19 | m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1}
20 | m_ShowUnitySplashScreen: 1
21 | m_ShowUnitySplashLogo: 1
22 | m_SplashScreenOverlayOpacity: 1
23 | m_SplashScreenAnimation: 1
24 | m_SplashScreenLogoStyle: 1
25 | m_SplashScreenDrawMode: 0
26 | m_SplashScreenBackgroundAnimationZoom: 1
27 | m_SplashScreenLogoAnimationZoom: 1
28 | m_SplashScreenBackgroundLandscapeAspect: 1
29 | m_SplashScreenBackgroundPortraitAspect: 1
30 | m_SplashScreenBackgroundLandscapeUvs:
31 | serializedVersion: 2
32 | x: 0
33 | y: 0
34 | width: 1
35 | height: 1
36 | m_SplashScreenBackgroundPortraitUvs:
37 | serializedVersion: 2
38 | x: 0
39 | y: 0
40 | width: 1
41 | height: 1
42 | m_SplashScreenLogos: []
43 | m_VirtualRealitySplashScreen: {fileID: 0}
44 | m_HolographicTrackingLossScreen: {fileID: 0}
45 | defaultScreenWidth: 1024
46 | defaultScreenHeight: 768
47 | defaultScreenWidthWeb: 960
48 | defaultScreenHeightWeb: 600
49 | m_StereoRenderingPath: 0
50 | m_ActiveColorSpace: 0
51 | m_MTRendering: 1
52 | m_StackTraceTypes: 010000000100000001000000010000000100000001000000
53 | iosShowActivityIndicatorOnLoading: -1
54 | androidShowActivityIndicatorOnLoading: -1
55 | iosAppInBackgroundBehavior: 0
56 | displayResolutionDialog: 1
57 | iosAllowHTTPDownload: 1
58 | allowedAutorotateToPortrait: 1
59 | allowedAutorotateToPortraitUpsideDown: 1
60 | allowedAutorotateToLandscapeRight: 1
61 | allowedAutorotateToLandscapeLeft: 1
62 | useOSAutorotation: 1
63 | use32BitDisplayBuffer: 1
64 | preserveFramebufferAlpha: 0
65 | disableDepthAndStencilBuffers: 0
66 | androidStartInFullscreen: 1
67 | androidRenderOutsideSafeArea: 0
68 | androidBlitType: 0
69 | defaultIsNativeResolution: 1
70 | macRetinaSupport: 1
71 | runInBackground: 1
72 | captureSingleScreen: 0
73 | muteOtherAudioSources: 0
74 | Prepare IOS For Recording: 0
75 | Force IOS Speakers When Recording: 0
76 | deferSystemGesturesMode: 0
77 | hideHomeButton: 0
78 | submitAnalytics: 1
79 | usePlayerLog: 1
80 | bakeCollisionMeshes: 0
81 | forceSingleInstance: 0
82 | resizableWindow: 0
83 | useMacAppStoreValidation: 0
84 | macAppStoreCategory: public.app-category.games
85 | gpuSkinning: 1
86 | graphicsJobs: 0
87 | xboxPIXTextureCapture: 0
88 | xboxEnableAvatar: 0
89 | xboxEnableKinect: 0
90 | xboxEnableKinectAutoTracking: 0
91 | xboxEnableFitness: 0
92 | visibleInBackground: 1
93 | allowFullscreenSwitch: 1
94 | graphicsJobMode: 0
95 | fullscreenMode: 1
96 | xboxSpeechDB: 0
97 | xboxEnableHeadOrientation: 0
98 | xboxEnableGuest: 0
99 | xboxEnablePIXSampling: 0
100 | metalFramebufferOnly: 0
101 | xboxOneResolution: 0
102 | xboxOneSResolution: 0
103 | xboxOneXResolution: 3
104 | xboxOneMonoLoggingLevel: 0
105 | xboxOneLoggingLevel: 1
106 | xboxOneDisableEsram: 0
107 | xboxOnePresentImmediateThreshold: 0
108 | switchQueueCommandMemory: 0
109 | switchQueueControlMemory: 16384
110 | switchQueueComputeMemory: 262144
111 | switchNVNShaderPoolsGranularity: 33554432
112 | switchNVNDefaultPoolsGranularity: 16777216
113 | switchNVNOtherPoolsGranularity: 16777216
114 | vulkanEnableSetSRGBWrite: 0
115 | m_SupportedAspectRatios:
116 | 4:3: 1
117 | 5:4: 1
118 | 16:10: 1
119 | 16:9: 1
120 | Others: 1
121 | bundleVersion: 0.1
122 | preloadedAssets: []
123 | metroInputSource: 0
124 | wsaTransparentSwapchain: 0
125 | m_HolographicPauseOnTrackingLoss: 1
126 | xboxOneDisableKinectGpuReservation: 1
127 | xboxOneEnable7thCore: 1
128 | vrSettings:
129 | cardboard:
130 | depthFormat: 0
131 | enableTransitionView: 0
132 | daydream:
133 | depthFormat: 0
134 | useSustainedPerformanceMode: 0
135 | enableVideoLayer: 0
136 | useProtectedVideoMemory: 0
137 | minimumSupportedHeadTracking: 0
138 | maximumSupportedHeadTracking: 1
139 | hololens:
140 | depthFormat: 1
141 | depthBufferSharingEnabled: 1
142 | lumin:
143 | depthFormat: 0
144 | frameTiming: 2
145 | enableGLCache: 0
146 | glCacheMaxBlobSize: 524288
147 | glCacheMaxFileSize: 8388608
148 | oculus:
149 | sharedDepthBuffer: 1
150 | dashSupport: 1
151 | enable360StereoCapture: 0
152 | isWsaHolographicRemotingEnabled: 0
153 | protectGraphicsMemory: 0
154 | enableFrameTimingStats: 0
155 | useHDRDisplay: 0
156 | m_ColorGamuts: 00000000
157 | targetPixelDensity: 30
158 | resolutionScalingMode: 0
159 | androidSupportedAspectRatio: 1
160 | androidMaxAspectRatio: 2.1
161 | applicationIdentifier: {}
162 | buildNumber: {}
163 | AndroidBundleVersionCode: 1
164 | AndroidMinSdkVersion: 16
165 | AndroidTargetSdkVersion: 0
166 | AndroidPreferredInstallLocation: 1
167 | aotOptions:
168 | stripEngineCode: 1
169 | iPhoneStrippingLevel: 0
170 | iPhoneScriptCallOptimization: 0
171 | ForceInternetPermission: 0
172 | ForceSDCardPermission: 0
173 | CreateWallpaper: 0
174 | APKExpansionFiles: 0
175 | keepLoadedShadersAlive: 0
176 | StripUnusedMeshComponents: 1
177 | VertexChannelCompressionMask: 4054
178 | iPhoneSdkVersion: 988
179 | iOSTargetOSVersionString: 9.0
180 | tvOSSdkVersion: 0
181 | tvOSRequireExtendedGameController: 0
182 | tvOSTargetOSVersionString: 9.0
183 | uIPrerenderedIcon: 0
184 | uIRequiresPersistentWiFi: 0
185 | uIRequiresFullScreen: 1
186 | uIStatusBarHidden: 1
187 | uIExitOnSuspend: 0
188 | uIStatusBarStyle: 0
189 | iPhoneSplashScreen: {fileID: 0}
190 | iPhoneHighResSplashScreen: {fileID: 0}
191 | iPhoneTallHighResSplashScreen: {fileID: 0}
192 | iPhone47inSplashScreen: {fileID: 0}
193 | iPhone55inPortraitSplashScreen: {fileID: 0}
194 | iPhone55inLandscapeSplashScreen: {fileID: 0}
195 | iPhone58inPortraitSplashScreen: {fileID: 0}
196 | iPhone58inLandscapeSplashScreen: {fileID: 0}
197 | iPadPortraitSplashScreen: {fileID: 0}
198 | iPadHighResPortraitSplashScreen: {fileID: 0}
199 | iPadLandscapeSplashScreen: {fileID: 0}
200 | iPadHighResLandscapeSplashScreen: {fileID: 0}
201 | iPhone65inPortraitSplashScreen: {fileID: 0}
202 | iPhone65inLandscapeSplashScreen: {fileID: 0}
203 | iPhone61inPortraitSplashScreen: {fileID: 0}
204 | iPhone61inLandscapeSplashScreen: {fileID: 0}
205 | appleTVSplashScreen: {fileID: 0}
206 | appleTVSplashScreen2x: {fileID: 0}
207 | tvOSSmallIconLayers: []
208 | tvOSSmallIconLayers2x: []
209 | tvOSLargeIconLayers: []
210 | tvOSLargeIconLayers2x: []
211 | tvOSTopShelfImageLayers: []
212 | tvOSTopShelfImageLayers2x: []
213 | tvOSTopShelfImageWideLayers: []
214 | tvOSTopShelfImageWideLayers2x: []
215 | iOSLaunchScreenType: 0
216 | iOSLaunchScreenPortrait: {fileID: 0}
217 | iOSLaunchScreenLandscape: {fileID: 0}
218 | iOSLaunchScreenBackgroundColor:
219 | serializedVersion: 2
220 | rgba: 0
221 | iOSLaunchScreenFillPct: 100
222 | iOSLaunchScreenSize: 100
223 | iOSLaunchScreenCustomXibPath:
224 | iOSLaunchScreeniPadType: 0
225 | iOSLaunchScreeniPadImage: {fileID: 0}
226 | iOSLaunchScreeniPadBackgroundColor:
227 | serializedVersion: 2
228 | rgba: 0
229 | iOSLaunchScreeniPadFillPct: 100
230 | iOSLaunchScreeniPadSize: 100
231 | iOSLaunchScreeniPadCustomXibPath:
232 | iOSUseLaunchScreenStoryboard: 0
233 | iOSLaunchScreenCustomStoryboardPath:
234 | iOSDeviceRequirements: []
235 | iOSURLSchemes: []
236 | iOSBackgroundModes: 0
237 | iOSMetalForceHardShadows: 0
238 | metalEditorSupport: 1
239 | metalAPIValidation: 1
240 | iOSRenderExtraFrameOnPause: 0
241 | appleDeveloperTeamID:
242 | iOSManualSigningProvisioningProfileID:
243 | tvOSManualSigningProvisioningProfileID:
244 | iOSManualSigningProvisioningProfileType: 0
245 | tvOSManualSigningProvisioningProfileType: 0
246 | appleEnableAutomaticSigning: 0
247 | iOSRequireARKit: 0
248 | iOSAutomaticallyDetectAndAddCapabilities: 1
249 | appleEnableProMotion: 0
250 | clonedFromGUID: c0afd0d1d80e3634a9dac47e8a0426ea
251 | templatePackageId: com.unity.template.3d@1.3.0
252 | templateDefaultScene: Assets/Scenes/SampleScene.unity
253 | AndroidTargetArchitectures: 5
254 | AndroidSplashScreenScale: 0
255 | androidSplashScreen: {fileID: 0}
256 | AndroidKeystoreName: '{inproject}: '
257 | AndroidKeyaliasName:
258 | AndroidBuildApkPerCpuArchitecture: 0
259 | AndroidTVCompatibility: 1
260 | AndroidIsGame: 1
261 | AndroidEnableTango: 0
262 | androidEnableBanner: 1
263 | androidUseLowAccuracyLocation: 0
264 | androidUseCustomKeystore: 0
265 | m_AndroidBanners:
266 | - width: 320
267 | height: 180
268 | banner: {fileID: 0}
269 | androidGamepadSupportLevel: 0
270 | resolutionDialogBanner: {fileID: 0}
271 | m_BuildTargetIcons: []
272 | m_BuildTargetPlatformIcons: []
273 | m_BuildTargetBatching:
274 | - m_BuildTarget: Standalone
275 | m_StaticBatching: 1
276 | m_DynamicBatching: 0
277 | - m_BuildTarget: tvOS
278 | m_StaticBatching: 1
279 | m_DynamicBatching: 0
280 | - m_BuildTarget: Android
281 | m_StaticBatching: 1
282 | m_DynamicBatching: 0
283 | - m_BuildTarget: iPhone
284 | m_StaticBatching: 1
285 | m_DynamicBatching: 0
286 | - m_BuildTarget: WebGL
287 | m_StaticBatching: 0
288 | m_DynamicBatching: 0
289 | m_BuildTargetGraphicsAPIs:
290 | - m_BuildTarget: AndroidPlayer
291 | m_APIs: 0b00000008000000
292 | m_Automatic: 1
293 | - m_BuildTarget: iOSSupport
294 | m_APIs: 10000000
295 | m_Automatic: 1
296 | - m_BuildTarget: AppleTVSupport
297 | m_APIs: 10000000
298 | m_Automatic: 0
299 | - m_BuildTarget: WebGLSupport
300 | m_APIs: 0b000000
301 | m_Automatic: 1
302 | m_BuildTargetVRSettings:
303 | - m_BuildTarget: Standalone
304 | m_Enabled: 0
305 | m_Devices:
306 | - Oculus
307 | - OpenVR
308 | m_BuildTargetEnableVuforiaSettings: []
309 | openGLRequireES31: 0
310 | openGLRequireES31AEP: 0
311 | openGLRequireES32: 0
312 | m_TemplateCustomTags: {}
313 | mobileMTRendering:
314 | Android: 1
315 | iPhone: 1
316 | tvOS: 1
317 | m_BuildTargetGroupLightmapEncodingQuality: []
318 | m_BuildTargetGroupLightmapSettings: []
319 | playModeTestRunnerEnabled: 0
320 | runPlayModeTestAsEditModeTest: 0
321 | actionOnDotNetUnhandledException: 1
322 | enableInternalProfiler: 0
323 | logObjCUncaughtExceptions: 1
324 | enableCrashReportAPI: 0
325 | cameraUsageDescription:
326 | locationUsageDescription:
327 | microphoneUsageDescription:
328 | switchNetLibKey:
329 | switchSocketMemoryPoolSize: 6144
330 | switchSocketAllocatorPoolSize: 128
331 | switchSocketConcurrencyLimit: 14
332 | switchScreenResolutionBehavior: 2
333 | switchUseCPUProfiler: 0
334 | switchApplicationID: 0x01004b9000490000
335 | switchNSODependencies:
336 | switchTitleNames_0:
337 | switchTitleNames_1:
338 | switchTitleNames_2:
339 | switchTitleNames_3:
340 | switchTitleNames_4:
341 | switchTitleNames_5:
342 | switchTitleNames_6:
343 | switchTitleNames_7:
344 | switchTitleNames_8:
345 | switchTitleNames_9:
346 | switchTitleNames_10:
347 | switchTitleNames_11:
348 | switchTitleNames_12:
349 | switchTitleNames_13:
350 | switchTitleNames_14:
351 | switchPublisherNames_0:
352 | switchPublisherNames_1:
353 | switchPublisherNames_2:
354 | switchPublisherNames_3:
355 | switchPublisherNames_4:
356 | switchPublisherNames_5:
357 | switchPublisherNames_6:
358 | switchPublisherNames_7:
359 | switchPublisherNames_8:
360 | switchPublisherNames_9:
361 | switchPublisherNames_10:
362 | switchPublisherNames_11:
363 | switchPublisherNames_12:
364 | switchPublisherNames_13:
365 | switchPublisherNames_14:
366 | switchIcons_0: {fileID: 0}
367 | switchIcons_1: {fileID: 0}
368 | switchIcons_2: {fileID: 0}
369 | switchIcons_3: {fileID: 0}
370 | switchIcons_4: {fileID: 0}
371 | switchIcons_5: {fileID: 0}
372 | switchIcons_6: {fileID: 0}
373 | switchIcons_7: {fileID: 0}
374 | switchIcons_8: {fileID: 0}
375 | switchIcons_9: {fileID: 0}
376 | switchIcons_10: {fileID: 0}
377 | switchIcons_11: {fileID: 0}
378 | switchIcons_12: {fileID: 0}
379 | switchIcons_13: {fileID: 0}
380 | switchIcons_14: {fileID: 0}
381 | switchSmallIcons_0: {fileID: 0}
382 | switchSmallIcons_1: {fileID: 0}
383 | switchSmallIcons_2: {fileID: 0}
384 | switchSmallIcons_3: {fileID: 0}
385 | switchSmallIcons_4: {fileID: 0}
386 | switchSmallIcons_5: {fileID: 0}
387 | switchSmallIcons_6: {fileID: 0}
388 | switchSmallIcons_7: {fileID: 0}
389 | switchSmallIcons_8: {fileID: 0}
390 | switchSmallIcons_9: {fileID: 0}
391 | switchSmallIcons_10: {fileID: 0}
392 | switchSmallIcons_11: {fileID: 0}
393 | switchSmallIcons_12: {fileID: 0}
394 | switchSmallIcons_13: {fileID: 0}
395 | switchSmallIcons_14: {fileID: 0}
396 | switchManualHTML:
397 | switchAccessibleURLs:
398 | switchLegalInformation:
399 | switchMainThreadStackSize: 1048576
400 | switchPresenceGroupId:
401 | switchLogoHandling: 0
402 | switchReleaseVersion: 0
403 | switchDisplayVersion: 1.0.0
404 | switchStartupUserAccount: 0
405 | switchTouchScreenUsage: 0
406 | switchSupportedLanguagesMask: 0
407 | switchLogoType: 0
408 | switchApplicationErrorCodeCategory:
409 | switchUserAccountSaveDataSize: 0
410 | switchUserAccountSaveDataJournalSize: 0
411 | switchApplicationAttribute: 0
412 | switchCardSpecSize: -1
413 | switchCardSpecClock: -1
414 | switchRatingsMask: 0
415 | switchRatingsInt_0: 0
416 | switchRatingsInt_1: 0
417 | switchRatingsInt_2: 0
418 | switchRatingsInt_3: 0
419 | switchRatingsInt_4: 0
420 | switchRatingsInt_5: 0
421 | switchRatingsInt_6: 0
422 | switchRatingsInt_7: 0
423 | switchRatingsInt_8: 0
424 | switchRatingsInt_9: 0
425 | switchRatingsInt_10: 0
426 | switchRatingsInt_11: 0
427 | switchLocalCommunicationIds_0:
428 | switchLocalCommunicationIds_1:
429 | switchLocalCommunicationIds_2:
430 | switchLocalCommunicationIds_3:
431 | switchLocalCommunicationIds_4:
432 | switchLocalCommunicationIds_5:
433 | switchLocalCommunicationIds_6:
434 | switchLocalCommunicationIds_7:
435 | switchParentalControl: 0
436 | switchAllowsScreenshot: 1
437 | switchAllowsVideoCapturing: 1
438 | switchAllowsRuntimeAddOnContentInstall: 0
439 | switchDataLossConfirmation: 0
440 | switchUserAccountLockEnabled: 0
441 | switchSystemResourceMemory: 16777216
442 | switchSupportedNpadStyles: 3
443 | switchNativeFsCacheSize: 32
444 | switchIsHoldTypeHorizontal: 0
445 | switchSupportedNpadCount: 8
446 | switchSocketConfigEnabled: 0
447 | switchTcpInitialSendBufferSize: 32
448 | switchTcpInitialReceiveBufferSize: 64
449 | switchTcpAutoSendBufferSizeMax: 256
450 | switchTcpAutoReceiveBufferSizeMax: 256
451 | switchUdpSendBufferSize: 9
452 | switchUdpReceiveBufferSize: 42
453 | switchSocketBufferEfficiency: 4
454 | switchSocketInitializeEnabled: 1
455 | switchNetworkInterfaceManagerInitializeEnabled: 1
456 | switchPlayerConnectionEnabled: 1
457 | ps4NPAgeRating: 12
458 | ps4NPTitleSecret:
459 | ps4NPTrophyPackPath:
460 | ps4ParentalLevel: 11
461 | ps4ContentID: ED1633-NPXX51362_00-0000000000000000
462 | ps4Category: 0
463 | ps4MasterVersion: 01.00
464 | ps4AppVersion: 01.00
465 | ps4AppType: 0
466 | ps4ParamSfxPath:
467 | ps4VideoOutPixelFormat: 0
468 | ps4VideoOutInitialWidth: 1920
469 | ps4VideoOutBaseModeInitialWidth: 1920
470 | ps4VideoOutReprojectionRate: 60
471 | ps4PronunciationXMLPath:
472 | ps4PronunciationSIGPath:
473 | ps4BackgroundImagePath:
474 | ps4StartupImagePath:
475 | ps4StartupImagesFolder:
476 | ps4IconImagesFolder:
477 | ps4SaveDataImagePath:
478 | ps4SdkOverride:
479 | ps4BGMPath:
480 | ps4ShareFilePath:
481 | ps4ShareOverlayImagePath:
482 | ps4PrivacyGuardImagePath:
483 | ps4NPtitleDatPath:
484 | ps4RemotePlayKeyAssignment: -1
485 | ps4RemotePlayKeyMappingDir:
486 | ps4PlayTogetherPlayerCount: 0
487 | ps4EnterButtonAssignment: 1
488 | ps4ApplicationParam1: 0
489 | ps4ApplicationParam2: 0
490 | ps4ApplicationParam3: 0
491 | ps4ApplicationParam4: 0
492 | ps4DownloadDataSize: 0
493 | ps4GarlicHeapSize: 2048
494 | ps4ProGarlicHeapSize: 2560
495 | playerPrefsMaxSize: 32768
496 | ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ
497 | ps4pnSessions: 1
498 | ps4pnPresence: 1
499 | ps4pnFriends: 1
500 | ps4pnGameCustomData: 1
501 | playerPrefsSupport: 0
502 | enableApplicationExit: 0
503 | resetTempFolder: 1
504 | restrictedAudioUsageRights: 0
505 | ps4UseResolutionFallback: 0
506 | ps4ReprojectionSupport: 0
507 | ps4UseAudio3dBackend: 0
508 | ps4SocialScreenEnabled: 0
509 | ps4ScriptOptimizationLevel: 0
510 | ps4Audio3dVirtualSpeakerCount: 14
511 | ps4attribCpuUsage: 0
512 | ps4PatchPkgPath:
513 | ps4PatchLatestPkgPath:
514 | ps4PatchChangeinfoPath:
515 | ps4PatchDayOne: 0
516 | ps4attribUserManagement: 0
517 | ps4attribMoveSupport: 0
518 | ps4attrib3DSupport: 0
519 | ps4attribShareSupport: 0
520 | ps4attribExclusiveVR: 0
521 | ps4disableAutoHideSplash: 0
522 | ps4videoRecordingFeaturesUsed: 0
523 | ps4contentSearchFeaturesUsed: 0
524 | ps4attribEyeToEyeDistanceSettingVR: 0
525 | ps4IncludedModules: []
526 | monoEnv:
527 | splashScreenBackgroundSourceLandscape: {fileID: 0}
528 | splashScreenBackgroundSourcePortrait: {fileID: 0}
529 | spritePackerPolicy:
530 | webGLMemorySize: 256
531 | webGLExceptionSupport: 1
532 | webGLNameFilesAsHashes: 0
533 | webGLDataCaching: 1
534 | webGLDebugSymbols: 0
535 | webGLEmscriptenArgs:
536 | webGLModulesDirectory:
537 | webGLTemplate: APPLICATION:Default
538 | webGLAnalyzeBuildSize: 0
539 | webGLUseEmbeddedResources: 0
540 | webGLCompressionFormat: 1
541 | webGLLinkerTarget: 1
542 | webGLThreadsSupport: 0
543 | webGLWasmStreaming: 0
544 | scriptingDefineSymbols: {}
545 | platformArchitecture: {}
546 | scriptingBackend: {}
547 | il2cppCompilerConfiguration: {}
548 | managedStrippingLevel: {}
549 | incrementalIl2cppBuild: {}
550 | allowUnsafeCode: 0
551 | additionalIl2CppArgs:
552 | scriptingRuntimeVersion: 1
553 | gcIncremental: 0
554 | gcWBarrierValidation: 0
555 | apiCompatibilityLevelPerPlatform:
556 | Standalone: 3
557 | m_RenderingPath: 1
558 | m_MobileRenderingPath: 1
559 | metroPackageName: Template_3D
560 | metroPackageVersion:
561 | metroCertificatePath:
562 | metroCertificatePassword:
563 | metroCertificateSubject:
564 | metroCertificateIssuer:
565 | metroCertificateNotAfter: 0000000000000000
566 | metroApplicationDescription: Template_3D
567 | wsaImages: {}
568 | metroTileShortName:
569 | metroTileShowName: 0
570 | metroMediumTileShowName: 0
571 | metroLargeTileShowName: 0
572 | metroWideTileShowName: 0
573 | metroSupportStreamingInstall: 0
574 | metroLastRequiredScene: 0
575 | metroDefaultTileSize: 1
576 | metroTileForegroundText: 2
577 | metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0}
578 | metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628,
579 | a: 1}
580 | metroSplashScreenUseBackgroundColor: 0
581 | platformCapabilities: {}
582 | metroTargetDeviceFamilies: {}
583 | metroFTAName:
584 | metroFTAFileTypes: []
585 | metroProtocolName:
586 | XboxOneProductId:
587 | XboxOneUpdateKey:
588 | XboxOneSandboxId:
589 | XboxOneContentId:
590 | XboxOneTitleId:
591 | XboxOneSCId:
592 | XboxOneGameOsOverridePath:
593 | XboxOnePackagingOverridePath:
594 | XboxOneAppManifestOverridePath:
595 | XboxOneVersion: 1.0.0.0
596 | XboxOnePackageEncryption: 0
597 | XboxOnePackageUpdateGranularity: 2
598 | XboxOneDescription:
599 | XboxOneLanguage:
600 | - enus
601 | XboxOneCapability: []
602 | XboxOneGameRating: {}
603 | XboxOneIsContentPackage: 0
604 | XboxOneEnableGPUVariability: 1
605 | XboxOneSockets: {}
606 | XboxOneSplashScreen: {fileID: 0}
607 | XboxOneAllowedProductIds: []
608 | XboxOnePersistentLocalStorageSize: 0
609 | XboxOneXTitleMemory: 8
610 | xboxOneScriptCompiler: 1
611 | XboxOneOverrideIdentityName:
612 | vrEditorSettings:
613 | daydream:
614 | daydreamIconForeground: {fileID: 0}
615 | daydreamIconBackground: {fileID: 0}
616 | cloudServicesEnabled:
617 | UNet: 1
618 | luminIcon:
619 | m_Name:
620 | m_ModelFolderPath:
621 | m_PortalFolderPath:
622 | luminCert:
623 | m_CertPath:
624 | m_SignPackage: 1
625 | luminIsChannelApp: 0
626 | luminVersion:
627 | m_VersionCode: 1
628 | m_VersionName:
629 | facebookSdkVersion: 7.9.4
630 | facebookAppId:
631 | facebookCookies: 1
632 | facebookLogging: 1
633 | facebookStatus: 1
634 | facebookXfbml: 0
635 | facebookFrictionlessRequests: 1
636 | apiCompatibilityLevel: 6
637 | cloudProjectId: 436efcfe-e9a2-4bd9-a532-28e26e58e84b
638 | framebufferDepthMemorylessMode: 0
639 | projectName: reorderable-list
640 | organizationId: masaki-synamom
641 | cloudEnabled: 0
642 | enableNativePlatformBackendsForNewInputSystem: 0
643 | disableOldInputManagerSupport: 0
644 | legacyClampBlendShapeWeights: 0
645 |
--------------------------------------------------------------------------------