prev XRISEditor main

This commit is contained in:
jmaniuvc
2025-02-19 17:43:14 +09:00
parent b6e88274e8
commit 621a106926
82 changed files with 386 additions and 47661 deletions

1
.gitattributes vendored
View File

@@ -1 +0,0 @@
Assets/StreamingAssets/baseAssetData filter=lfs diff=lfs merge=lfs -text

View File

@@ -0,0 +1,57 @@
using TMPro;
using UnityEngine;
namespace XED
{
public class Canvas_Commander : MonoBehaviour
{
public string[] commands =
{
"HELP",
"WAIT",
"CREATE",
"COUNT",
};
public TMP_InputField input;
private void Awake()
{
input = GetComponentInChildren<TMP_InputField>();
}
private void Update()
{
if(input.isFocused && Input.GetKeyDown(KeyCode.Return))
{
Command(input.text);
input.text = "";
}
}
void Command(string args)
{
var commands = args.Split(' ');
for (int i = 0; i < commands.Length; i++)
{
if (!CommandCheck(commands[i]))
{
Debug.Log("Command not found: " + commands[i]);
return;
}
}
}
bool CommandCheck(string command)
{
foreach (var c in commands)
{
if(command == c)
{
return true;
}
}
return false;
}
}
}

View File

@@ -1,14 +0,0 @@
using UnityEngine;
using WI.UI;
namespace XED.UI
{
public class Canvas_TwinObjectViewer : CanvasBase
{
public Panel_MetaViewer prf_MetaViewer;
public Panel_KeyValueViewer prf_KeyValueViewer;
public Panel_InfoViewer prf_InfoViewer;
public Panel_DetailViewer prf_DetailViewer;
public Panel_ComponentViewer prf_ComponentViewer;
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: 6110e0d97587ab24d82a1eeca3312e7e

View File

@@ -1,29 +0,0 @@
using NUnit.Framework;
using System.Collections.Generic;
using UnityEngine;
using WI;
namespace XED.Core
{
public class DataHub : MonoBehaviour, ISingle
{
Dictionary<string, TwinEntity> entities = new();
public void Regist(TwinEntity to)
{
entities.Add(to.id, to);
}
public void Subscribe(string id, TwinObject subscriber)
{
if(entities.TryGetValue(id, out var entity))
{
subscriber.Binding(entity);
}
}
void Update()
{
}
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: b6643333da6e6dd43b3b56dfdeaa0d10

View File

@@ -22,7 +22,9 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
using UnityEngine;
#if UNITY_EDITOR
using UnityEditor;
#endif
using System;
using System.Collections;

View File

@@ -22,7 +22,9 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
using UnityEngine;
#if UNITY_EDITOR
using UnityEditor;
#endif
using System;
using System.Collections;
using System.Collections.Generic;

View File

@@ -22,7 +22,9 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
using UnityEngine;
#if UNITY_EDITOR
using UnityEditor;
#endif
using System;
using System.Collections;

View File

@@ -3,7 +3,7 @@ using UnityEngine.UI;
using WI.UI;
using XED.UI;
namespace XED.UI
namespace XED
{
public class Panel_ComponentEditor : PanelBase
{
@@ -15,7 +15,6 @@ namespace XED.UI
public override void AfterAwake()
{
panel_Header = GetComponentInChildren<Panel_Header>();
panel_Header.onClickClose += Close;
}
public void Close()

View File

@@ -0,0 +1,19 @@
using UnityEngine;
namespace XED
{
public class Panel_ComponentViewer : MonoBehaviour
{
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}
}

View File

@@ -1,8 +0,0 @@
using WI.UI;
namespace XED.UI
{
public class Panel_DetailViewer : PanelBase
{
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: bc554daef6321ce4fb83761ab332dcc5

View File

@@ -1,8 +0,0 @@
using WI.UI;
namespace XED.UI
{
public class Panel_InfoViewer : PanelBase
{
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: a51148cd6d8617549b096cd1b4a1ca44

View File

@@ -1,8 +0,0 @@
using WI.UI;
namespace XED.UI
{
public class Panel_KeyValueViewer : PanelBase
{
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: b8f047bd58bbabb45bd8b4b4499941fe

View File

@@ -1,12 +0,0 @@
using WI.UI;
namespace XED.UI
{
public class Panel_MetaViewer : PanelBase
{
public void Open(TwinObject to)
{
gameObject.SetActive(true);
}
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: c9ee1dcfb138d654182352faa0ed187b

View File

@@ -1,24 +0,0 @@
using UnityEngine;
using XED.Core;
namespace XED
{
public class RealTruck : TwinEntity
{
public Transform start;
public Transform end;
public float speed = 1f;
private void Awake()
{
id = "truck";
FindFirstObjectByType<DataHub>().Regist(this);
}
private void Update()
{
transform.position = Vector3.Lerp(start.position, end.position, Mathf.PingPong(Time.time * speed, 1));
}
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: c8d736bb08efdee42815d0435df87d7e

View File

@@ -1,15 +1,3 @@
### 0.19.9 02-18
```
1. git lfs 추가
2. GUI Window 기능 병합
3. 기본 에셋 목록 추가
```
### 0.19.6 02-17
```
1. 모델링이 존재하는 TwinObject인 RenderableTwinObject 추가
```
### 0.19.5 02-14
```
1. 프로퍼티 뷰어에 툴팁 기능 추가

View File

@@ -0,0 +1,81 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f6a018f972d949340abbdf58fa667d98, type: 3}
m_Name: TriLibSettings
m_EditorClassIdentifier:
_dictionaryBoolKeys:
- StandardMaterialMapper
- UniversalRPMaterialMapper
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
_dictionaryBoolValues: 00010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
_settingsCount: 2

View File

@@ -1,7 +1,8 @@
fileFormatVersion: 2
guid: b7f6da537ec13dc469f4020ec97c206f
DefaultImporter:
guid: 0d378b14d3694da419f53fa3f8ae92a4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -812,7 +812,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -820,7 +820,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -860,11 +860,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -307
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -3248,7 +3248,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -3256,7 +3256,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -3296,11 +3296,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -77
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -4181,7 +4181,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -4189,7 +4189,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -4229,11 +4229,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -123
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -4493,7 +4493,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -4501,7 +4501,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -4541,11 +4541,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -31
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -5083,7 +5083,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -5091,7 +5091,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -5131,11 +5131,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -123
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -6218,7 +6218,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -6226,7 +6226,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -6266,11 +6266,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -215
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -7969,7 +7969,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -7977,7 +7977,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -8017,11 +8017,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -261
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -8169,7 +8169,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -8177,7 +8177,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -8217,11 +8217,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -77
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -12129,7 +12129,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -12137,7 +12137,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -12177,11 +12177,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -77
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -12842,7 +12842,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -12850,7 +12850,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -12890,11 +12890,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -169
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -14807,7 +14807,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -14815,7 +14815,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -14855,11 +14855,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -31
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -14937,7 +14937,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.x
@@ -14945,7 +14945,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchorMin.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_SizeDelta.x
@@ -14985,11 +14985,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.x
value: 153.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_AnchoredPosition.y
value: -31
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6291666171046911034, guid: 1bc9e043f1497cd4fbb8e241c26966c1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@@ -15933,7 +15933,7 @@ GameObject:
- component: {fileID: 1715748517}
- component: {fileID: 1715748519}
m_Layer: 5
m_Name: Panel_TopBar
m_Name: Panel_Header
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@@ -16008,7 +16008,7 @@ MonoBehaviour:
m_GameObject: {fileID: 1715748515}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: eeb29fdb1a9fc134aa57e1efd67b4848, type: 3}
m_Script: {fileID: 11500000, guid: cb774b2f3bebecd448d68beda0137368, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1728035472

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 2818b23cee4c8e64789032fcfef9e248
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -13,8 +13,6 @@ MonoBehaviour:
m_Name: TriLibSettings
m_EditorClassIdentifier:
_dictionaryBoolKeys:
- StandardMaterialMapper
- UniversalRPMaterialMapper
-
-
-
@@ -77,5 +75,7 @@ MonoBehaviour:
-
-
-
_dictionaryBoolValues: 00010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
_settingsCount: 2
-
-
_dictionaryBoolValues: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
_settingsCount: 0

View File

@@ -22,8 +22,8 @@ namespace XED.UI
private int rot;
private Dictionary<Vector3, Vector3> dirTable = new();
RenderableTwinObject target;
TwinObject target;
HashSet<TwinObject> targets = new();
public event Action onTargetEvent;
public event Action onTargetMissing;
@@ -43,7 +43,7 @@ namespace XED.UI
}
}
public void SetTarget(RenderableTwinObject target)
public void SetTarget(TwinObject target)
{
if (target is Wall || target is WallGroup)
return;

View File

@@ -12,15 +12,15 @@ public class ObjectHandler : MonoBehaviour, ISingle
bool onClickGround;
bool onClickTwinObject;
public RenderableTwinObject heldObject;
public RenderableTwinObject clickObject;
public TwinObject heldObject;
public TwinObject clickObject;
Dictionary<(bool, bool, bool), HandState> handleStateTable = new();
public event Action<RenderableTwinObject> onDrop;
public event Action<RenderableTwinObject> onSelect;
public event Action<RenderableTwinObject> onDeselect;
public event Action<TwinObject> onDrop;
public event Action<TwinObject> onSelect;
public event Action<TwinObject> onDeselect;
List<RenderableTwinObject> selectedObjects = new();
List<TwinObject> selectedObjects = new();
public override void AfterAwake()
{
@@ -40,12 +40,12 @@ public class ObjectHandler : MonoBehaviour, ISingle
handleStateTable.Add((false, false, false), HandState.Nothing);
}
public void Grab(RenderableTwinObject to)
public void Grab(TwinObject to)
{
heldObject = to;
}
public void Select(RenderableTwinObject to)
public void Select(TwinObject to)
{
if (!to.physics.activeSelf)
return;
@@ -86,7 +86,7 @@ public class ObjectHandler : MonoBehaviour, ISingle
//if (FindSingle<GizmoController>().GetGizmoHover())
// return;
onClickTwinObject = true;
clickObject = comp as RenderableTwinObject;
clickObject = comp as TwinObject;
}
public void OnStayGround(RaycastHit hit, Component comp)
@@ -168,12 +168,12 @@ public class ObjectHandler : MonoBehaviour, ISingle
onClickTwinObject = false;
}
void DeselectObject(RenderableTwinObject to)
void DeselectObject(TwinObject to)
{
onDeselect?.Invoke(to);
}
public void Remove(RenderableTwinObject to)
public void Remove(TwinObject to)
{
if (selectedObjects.Contains(to))
{

View File

@@ -10,7 +10,7 @@ using Color = UnityEngine.Color;
namespace XED
{
public class Wall : RenderableTwinObject
public class Wall : TwinObject
{
public enum VertexPoint
{

View File

@@ -298,7 +298,7 @@ namespace XED
}
//Material 벽 Mat 교체
public void TargetWallMatChange(RenderableTwinObject targetWall, Material changemat)
public void TargetWallMatChange(TwinObject targetWall, Material changemat)
{
targetWall.MaterialChange(changemat);
}

View File

@@ -7,7 +7,7 @@ using WI;
namespace XED
{
public class WallGroup : RenderableTwinObject
public class WallGroup : TwinObject
{
public HashSet<Wall> groupWalls = new();
public HashSet<LinePoint> groupPoints = new();

View File

@@ -1,79 +0,0 @@
using System;
using System.Collections.Generic;
using UnityEngine;
using XED.Attributes;
namespace XED
{
public class RenderableTwinObject : TwinObject
{
public TwinPhysics physics = new TwinPhysics();
public event Action<TwinObject, TwinObject> onTwinConflictEvent;
public event Action<TwinObject, TwinObject> onTwinDeconflictEvent;
[PropertyVisible, Tooltip("ù ¹øÂ° info")]
public bool IsDisplayable;
[PropertyVisible, Tooltip("µÎ ¹øÂ° info")]
public bool IsInteractible;
public HashSet<RenderableTwinObject> crashObjects = new();
public BoxHighLighter boxHighLighter;
public override void AfterAwake()
{
base.AfterAwake();
physics.Init(this);
}
public virtual void SetDisplayable(bool value)
{
metaData.modeling.SetActive(!value);
}
public virtual void SetInteractible(bool value)
{
IsInteractible = !value;
physics.SetActive(!value);
}
private void OnTriggerEnter(Collider other)
{
if (!other.TryGetComponent(out RenderableTwinObject contracter))
return;
crashObjects.Add(contracter);
Conflict(contracter);
}
public virtual void MaterialChange(Material mat)
{
}
private void OnTriggerExit(Collider other)
{
if (!other.TryGetComponent(out RenderableTwinObject twin))
return;
CrashObjectRemove(twin);
}
public void CrashBoxHighLightDeActive()
{
foreach (var contracter in crashObjects)
{
contracter.CrashObjectRemove(this);
}
}
public void CrashObjectRemove<T>(T crashObject) where T : RenderableTwinObject
{
crashObjects.Remove(crashObject);
Deconflict(crashObject);
}
public virtual void Conflict(TwinObject contract)
{
onTwinConflictEvent?.Invoke(this, contract);
}
public virtual void Deconflict(TwinObject contract)
{
onTwinDeconflictEvent?.Invoke(this, contract);
}
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: 4bfa2f4da8db9e9459c7c78f684fca43

View File

@@ -5,7 +5,6 @@ using UnityEngine;
using UnityEngine.Pool;
using XED.Interfaces;
using XED.Attributes;
using XED.Core;
namespace XED
{
@@ -13,32 +12,92 @@ namespace XED
{
public HashSet<TwinObject> childs = new HashSet<TwinObject>();
public TwinPhysics physics = new TwinPhysics();
public TwinMetaData metaData = new TwinMetaData();
public AssetLabel assetLabel;
public event Action<TwinObject> onSelectEvent;
public event Action<TwinObject> onDeselectEvent;
public event Action<TwinObject, TwinObject> onTwinConflictEvent;
public event Action<TwinObject, TwinObject> onTwinDeconflictEvent;
[PropertyVisible, Tooltip("ù ¹øÂ° info")]
public bool IsDisplayable;
[PropertyVisible, Tooltip("µÎ ¹øÂ° info")]
public bool IsInteractible;
public override void AfterAwake()
{
IsDisplayable = true;
IsInteractible = true;
physics.Init(this);
metaData.Init(this);
}
public virtual void SetDisplayable(bool value)
{
IsDisplayable = !value;
metaData.modeling.SetActive(!value);
}
public virtual void Select()
{
onSelectEvent?.Invoke(this);
}
public virtual void SetInteractible(bool value)
{
IsInteractible = !value;
physics.SetActive(!value);
}
public virtual void Deselect()
{
onDeselectEvent?.Invoke(this);
}
public HashSet<TwinObject> crashObjects = new();
public BoxHighLighter boxHighLighter;
TwinEntity entity;
protected internal virtual void Binding(TwinEntity entity)
private void OnTriggerEnter(Collider other)
{
this.entity = entity;
if (!other.TryGetComponent<TwinObject>(out TwinObject contracter))
return;
crashObjects.Add(contracter);
Conflict(contracter);
}
private void OnTriggerExit(Collider other)
{
if (!other.TryGetComponent<TwinObject>(out TwinObject twin))
return;
CrashObjectRemove(twin);
}
public void CrashBoxHighLightDeActive()
{
foreach(var contracter in crashObjects)
{
contracter.CrashObjectRemove(this);
}
}
public void CrashObjectRemove(TwinObject crashObject)
{
crashObjects.Remove(crashObject);
Deconflict(crashObject);
}
public virtual void Conflict(TwinObject contract)
{
onTwinConflictEvent?.Invoke(this, contract);
}
public virtual void Deconflict(TwinObject contract)
{
onTwinDeconflictEvent?.Invoke(this, contract);
}
public virtual void MaterialChange(Material mat)
{
}
}
}

View File

@@ -1,114 +0,0 @@
using System;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
using WI.UI;
namespace XED
{
public class Canvas_Commander : CanvasBase
{
public string[] commands =
{
"HELP",
"WAIT",
"CREATE",
"COUNT",
};
public TMP_InputField input;
public Button Button_ComponentMode;
public Button Button_NormalMode;
public Button Button_Depth0;
public Button Button_Depth1;
public Button Button_Depth2;
public Button Button_Depth3;
public Button Button_Depth4;
private void Awake()
{
input = GetComponentInChildren<TMP_InputField>();
}
public override void AfterAwake()
{
Button_ComponentMode.onClick.AddListener(OnClickComponentMode);
Button_NormalMode.onClick.AddListener(OnClickNormalMode);
Button_Depth0.onClick.AddListener(OnClickDepth0);
Button_Depth1.onClick.AddListener(OnClickDepth1);
Button_Depth2.onClick.AddListener(OnClickDepth2);
Button_Depth3.onClick.AddListener(OnClickDepth3);
Button_Depth4.onClick.AddListener(OnClickDepth4);
}
private void OnClickDepth4()
{
OnClickComponentMode();
}
private void OnClickDepth3()
{
Camera.main.fieldOfView = 40;
}
private void OnClickDepth2()
{
Camera.main.fieldOfView = 50;
}
private void OnClickDepth1()
{
Camera.main.fieldOfView = 60;
}
private void OnClickDepth0()
{
Camera.main.fieldOfView = 70;
}
private void OnClickNormalMode()
{
Camera.main.orthographic = false;
}
private void OnClickComponentMode()
{
Camera.main.orthographic = true;
}
private void Update()
{
if(input.isFocused && Input.GetKeyDown(KeyCode.Return))
{
Command(input.text);
input.text = "";
}
}
void Command(string args)
{
var commands = args.Split(' ');
for (int i = 0; i < commands.Length; i++)
{
if (!CommandCheck(commands[i]))
{
Debug.Log("Command not found: " + commands[i]);
return;
}
}
}
bool CommandCheck(string command)
{
foreach (var c in commands)
{
if(command == c)
{
return true;
}
}
return false;
}
}
}

View File

@@ -1,9 +0,0 @@
using UnityEngine;
using WI.UI;
namespace XED.UI
{
public class Panel_ComponentViewer : PanelBase
{
}
}

View File

@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 9e0637c63956a034e93f687b99bafa52
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -11,7 +11,7 @@ namespace XED.UI
{
public class Panel_ObjectTool : PanelBase
{
private HashSet<RenderableTwinObject> targets = new();
private HashSet<TwinObject> targets = new();
public event Action onClickMove;
public event Action onClickScale;
public event Action onClickRotate;
@@ -39,7 +39,7 @@ namespace XED.UI
button_texture = Find<Button>(nameof(button_texture));
button_texture.onClick.AddListener(TexturePopupOpen);
}
internal void Attach(RenderableTwinObject to)
internal void Attach(TwinObject to)
{
targets.Add(to);
TextureButtonControl();
@@ -56,7 +56,7 @@ namespace XED.UI
button_texture.gameObject.SetActive(value);
}
public void Detach(RenderableTwinObject to)
public void Detach(TwinObject to)
{
targets.Remove(to);

View File

@@ -9,7 +9,6 @@ using WI.UI;
using XED.UI;
using XED.Attributes;
using TMPro;
using XED.Manage;
namespace XED.UI
{
@@ -26,8 +25,8 @@ namespace XED.UI
public override void AfterAwake()
{
if (Button_Close != null)
Button_Close.onClick.AddListener(Deactivate);
Button_Close.onClick.AddListener(Deactivate);
infoPrefab = Resources.Load<UI_PropertyViewerInfo>("Prefabs/UI/PRF_PropertyViewerInfo");
}

View File

@@ -1,20 +0,0 @@
using UnityEngine;
using XED.Attributes;
using XED.Core;
namespace XED
{
public class TestTruck : RenderableTwinObject
{
[PropertyVisible]
public int deliveryCount;
[PropertyVisible]
public float deliverySpeed;
public override void AfterAwake()
{
base.AfterAwake();
FindFirstObjectByType<DataHub>().Subscribe("truck", this);
}
}
}

Binary file not shown.

View File

@@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 88d4c5d9037b66043aae59a7433fa439
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,8 +0,0 @@
using UnityEngine;
namespace XED
{
public class TestMachine : TwinObject
{
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: 2b8bdc1c416ee3d458d20a95ef7c5cd1

View File

@@ -1,9 +0,0 @@
using UnityEngine;
namespace XED
{
public class TestMaterial : TwinObject
{
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: 282e0d5c37bbe0a40baa2d1d95ba777e

View File

@@ -1,9 +0,0 @@
using UnityEngine;
namespace XED
{
public class TestStacker : TwinObject
{
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: c22e9178cad64f04fa9fc8f5907807e0

13
Assets/TestTruck.cs Normal file
View File

@@ -0,0 +1,13 @@
using UnityEngine;
using XED.Attributes;
namespace XED
{
public class TestTruck : TwinObject
{
[PropertyVisible]
public int deliveryCount;
[PropertyVisible]
public float deliverySpeed;
}
}

View File

@@ -1,8 +0,0 @@
using UnityEngine;
namespace XED
{
public class TestWorker : TwinObject
{
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: d862a0e5690bc2b47bb7cee0a852b368

View File

@@ -1,95 +0,0 @@
using System;
using System.Collections.Generic;
using System.Reflection;
using UnityEngine;
namespace XED.Core
{
public class TwinEntity : MonoBehaviour
{
public string id;
Dictionary<string, FieldInfo> properties = new();
Dictionary<FieldInfo, object> propertyValues = new();
public object GetPropertyValue(string key)
{
var fi = GetFieldInfo(key);
if (fi == null)
return null;
return fi.GetValue(this);
}
public class UpdateOption
{
public string key;
public bool changed;
public float interval;
}
public class LocalOption
{
public float range;
public float interval;
public List<string> primaryKeys = new();
}
float localTimer;
LocalOption localOption;
public void SetLocalOption(LocalOption option)
{
localOption = option;
}
Dictionary<UpdateOption, FieldInfo> updateTable = new Dictionary<UpdateOption, FieldInfo>();
public void SetUpdateOption(UpdateOption option)
{
var fi = GetFieldInfo(option.key);
if (fi == null)
return;
updateTable.Add(option, fi);
}
List<FieldInfo> changedFields = new();
private void FixedUpdate()
{
changedFields.Clear();
if (localOption != null)
{
localTimer += Time.fixedDeltaTime;
if (localOption.interval > localTimer)
return;
foreach(var key in localOption.primaryKeys)
{
var fi = GetFieldInfo(key);
if(fi == null)
{
Debug.Log($"Wrong key: {key}");
continue;
}
var currValue = fi.GetValue(this);
var prevValue = propertyValues[properties[key]];
if (currValue != prevValue)
{
}
}
}
}
FieldInfo GetFieldInfo(string key)
{
if (properties.TryGetValue(key, out var property))
{
return property;
}
var typeInfo = GetType();
var p = typeInfo.GetField(key);
properties.Add(key, p);
propertyValues.Add(p, p.GetValue(this));
return p;
}
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: 80461e4bcfb6d364da9fe19c5320c56a

View File

@@ -24,6 +24,7 @@ namespace UnityEngine.UI.Extensions
}
#if UNITY_EDITOR
/// <summary>
/// Reserve for editor only
/// </summary>
@@ -34,6 +35,7 @@ namespace UnityEngine.UI.Extensions
controlPoints = value;
}
}
#endif
#endregion

View File

@@ -1 +1 @@
9e17bbfadbf387c00c9f325be2e95a13
33ccbe1d85f3c765966a99e09ccef6f8