Compare commits
1 Commits
pgd/202506
...
jym/250526
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c15d6e6a13 |
@@ -831,6 +831,7 @@ GameObject:
|
||||
- component: {fileID: 6954167609728662753}
|
||||
- component: {fileID: 8549676201747870985}
|
||||
- component: {fileID: 7236664214523229146}
|
||||
- component: {fileID: 8105564570549308953}
|
||||
m_Layer: 5
|
||||
m_Name: Panel_AssetManager
|
||||
m_TagString: Untagged
|
||||
@@ -909,6 +910,23 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 25457a0961cc0bb4a949d5fe58c2ada6, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!114 &8105564570549308953
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2762757506943678736}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f9c6f8c6f0c462a4ab09d615c0d0db6c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
state: 0
|
||||
resizeDirection: 0
|
||||
handleThickness: 5
|
||||
minWidth: 100
|
||||
minHeight: 100
|
||||
--- !u!1 &2774336303168765450
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
@@ -117,8 +117,36 @@ namespace Studio.AssetTool
|
||||
}
|
||||
yield return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void OnLoadAssetSelected(AssetLibraryItem item, AssetData asset)
|
||||
{
|
||||
if (item == null || item.linkedObject == null)
|
||||
{
|
||||
selectedAssetData = null;
|
||||
return;
|
||||
}
|
||||
selectedAssetData = item.linkedObject.GetComponent<CustomAssetData>();
|
||||
if (selectedAssetData == null || selectedAssetData.isLoadComplete == false)
|
||||
{
|
||||
selectedAssetData = null;
|
||||
return;
|
||||
}
|
||||
selectedItem = UnityEngine.GameObject.Instantiate(renderObjectPrefab);
|
||||
selectRenderObject = selectedItem.GetComponent<CustomAssetRenderObject>();
|
||||
selectRenderObject.OnSelected += panel_ObjectDistance.SelectObjectFromCreate;
|
||||
selectRenderObject.instantiateObject = selectedAssetData.InstantiateLoadedObject;
|
||||
selectRenderObject.getBounds = selectedAssetData.GetCombinedBoundary;
|
||||
selectRenderObject.CreateRenderObject();
|
||||
selectRenderObject.Select();
|
||||
selectedAssetData.AddTransformToRender(selectedItem.transform);
|
||||
CoroutineRunner.instance.StartCoroutine(ChangeSelectedAssetTransform());
|
||||
|
||||
selectRenderObject.transform.position = new Vector3(asset.position.x, asset.position.y, asset.position.z);
|
||||
selectRenderObject.transform.eulerAngles = new Vector3(asset.rotation.x, asset.rotation.y, asset.rotation.z);
|
||||
selectRenderObject.transform.localScale = new Vector3(asset.scale.x, asset.scale.y, asset.scale.z);
|
||||
}
|
||||
public void OnAssetSelected(AssetLibraryItem item)
|
||||
{
|
||||
if (item == null || item.linkedObject == null)
|
||||
@@ -190,10 +218,7 @@ namespace Studio.AssetTool
|
||||
public void OnLoadAsset(AssetData asset)
|
||||
{
|
||||
AssetLibraryItem item = assetScrollView.FindItem(asset.name, AssetLibraryItemType.file);
|
||||
OnAssetSelected(item);
|
||||
selectRenderObject.transform.position = new Vector3(asset.position.x, asset.position.y, asset.position.z);
|
||||
selectRenderObject.transform.eulerAngles = new Vector3(asset.rotation.x, asset.rotation.y, asset.rotation.z);
|
||||
selectRenderObject.transform.localScale = new Vector3(asset.scale.x, asset.scale.y, asset.scale.z);
|
||||
OnLoadAssetSelected(item, asset);
|
||||
OnAssetDropped(item);
|
||||
}
|
||||
|
||||
|
||||
@@ -55,11 +55,11 @@ namespace Studio.AssetTool
|
||||
|
||||
var files = Directory.GetFiles(path, "*.fbx", SearchOption.AllDirectories);
|
||||
|
||||
if (dataRepo.TryGetDataFromPath(path, out var p))
|
||||
return;
|
||||
|
||||
foreach (var file in files)
|
||||
{
|
||||
if (dataRepo.TryGetDataFromPath(path, out var p))
|
||||
continue;
|
||||
|
||||
filePaths.Add(file);
|
||||
}
|
||||
|
||||
@@ -74,6 +74,9 @@ namespace Studio.AssetTool
|
||||
var directoryPath = Path.GetDirectoryName(file);
|
||||
var folderName = Path.GetFileName(directoryPath);
|
||||
|
||||
if (dataRepo.TryGetDataFromName(assetName, out var p))
|
||||
continue;
|
||||
|
||||
GameObject newObject = new GameObject(assetName);
|
||||
newObject.transform.parent = fbxAnchor;
|
||||
CustomAssetData assetData = newObject.AddComponent<CustomAssetData>();
|
||||
@@ -89,6 +92,7 @@ namespace Studio.AssetTool
|
||||
|
||||
OnLoadComplete(assetData);
|
||||
}
|
||||
onLoadComplete?.Invoke();
|
||||
}
|
||||
|
||||
public void SaveToLocalData(List<CustomAssetData> assetDatas, string path = "")
|
||||
@@ -231,7 +235,6 @@ namespace Studio.AssetTool
|
||||
connector.assetScrollView.AddItem(folderName, null, AssetLibraryItemType.folder);
|
||||
|
||||
AssetLibraryItem item = connector.assetScrollView.AddItem(assetData.assetName, assetData.gameObject, AssetLibraryItemType.file, urlSectionItem);
|
||||
onLoadComplete?.Invoke();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -31,6 +31,7 @@ namespace Studio
|
||||
fbxFileManager.onLoadComplete += OnLoadCustomAsset;
|
||||
onAssetManagerDatas += canvas_Popup.panel_assetmanager.SetAssetManager;
|
||||
onAssetManagerDatas += (data) => projectManager.OpenProjectSettingsDataAfterDataLoad();
|
||||
|
||||
}
|
||||
public void LoadLocalFBXDirectorys(List<string> folderPaths)
|
||||
{
|
||||
@@ -80,13 +81,12 @@ namespace Studio
|
||||
{
|
||||
var connector = ManagerHub.instance.Get<CustomAssetConnector>();
|
||||
connector.OnLoadAsset(asset);
|
||||
|
||||
itemDict.Add(asset.id, connector.connectedAssets.Last().hierarchyItem);
|
||||
}
|
||||
|
||||
private void RestoreHierarchy(AssetData asset)
|
||||
{
|
||||
var connector = ManagerHub.instance.Get<CustomAssetConnector>();
|
||||
itemDict.TryAdd(asset.id, connector.connectedAssets.Last().hierarchyItem);
|
||||
|
||||
foreach (int id in asset.children)
|
||||
{
|
||||
|
||||
@@ -7,6 +7,7 @@ using System.Collections.Generic;
|
||||
using System;
|
||||
using Studio.Util;
|
||||
using Studio.AssetTool;
|
||||
using System.Linq;
|
||||
|
||||
namespace Studio
|
||||
{
|
||||
@@ -27,6 +28,30 @@ namespace Studio
|
||||
public Action<UI_DynamicObjectItem> onUISetting;
|
||||
public Action<UI_DynamicObjectItem> onRemoveItem;
|
||||
|
||||
public void SetDataList(List<string> dataList)
|
||||
{
|
||||
this.dataList = dataList;
|
||||
|
||||
var preDataDropdownOption = Dropdown_Data.options[Dropdown_Data.value].text;
|
||||
SetDataDropdown();
|
||||
|
||||
foreach(var option in Dropdown_Data.options)
|
||||
{
|
||||
Dropdown_Data.value = option.text == preDataDropdownOption ? Dropdown_Data.options.IndexOf(option) : 0;
|
||||
}
|
||||
}
|
||||
public void SetModelList(List<CustomAssetData> modelList)
|
||||
{
|
||||
this.modelList = modelList;
|
||||
|
||||
var preDataDropdownOption = Dropdown_Model.options[Dropdown_Model.value].text;
|
||||
SetModelDropdown();
|
||||
|
||||
foreach (var option in Dropdown_Model.options)
|
||||
{
|
||||
Dropdown_Model.value = option.text == preDataDropdownOption ? Dropdown_Model.options.IndexOf(option) : 0;
|
||||
}
|
||||
}
|
||||
public void SetData(List<string> dataList, List<CustomAssetData> modelList)
|
||||
{
|
||||
this.dataList = dataList;
|
||||
@@ -106,7 +131,11 @@ namespace Studio
|
||||
{
|
||||
var dynamic3DModelConnection = new Dynamic3DModelConnection();
|
||||
dynamic3DModelConnection.dataName = Dropdown_Data.options[Dropdown_Data.value].text;
|
||||
dynamic3DModelConnection.modelName = selectedModel.assetName;
|
||||
|
||||
if (selectedModel != null)
|
||||
{
|
||||
dynamic3DModelConnection.modelName = selectedModel.assetName;
|
||||
}
|
||||
dynamic3DModelConnection.modelUISettingData = selectDynamicObjectData;
|
||||
|
||||
return dynamic3DModelConnection;
|
||||
|
||||
@@ -51,7 +51,9 @@ namespace Studio
|
||||
if (mqttSetting == null)
|
||||
return;
|
||||
|
||||
foreach(var mqttConnection in mqttSetting.mqttConnections)
|
||||
dataList.Clear();
|
||||
|
||||
foreach (var mqttConnection in mqttSetting.mqttConnections)
|
||||
{
|
||||
foreach(var mqttTopic in mqttConnection.topics)
|
||||
{
|
||||
@@ -59,11 +61,22 @@ namespace Studio
|
||||
dataList.Add(dataName);
|
||||
}
|
||||
}
|
||||
foreach(var item in dynamicObjectItems)
|
||||
{
|
||||
item.SetDataList(dataList);
|
||||
}
|
||||
}
|
||||
public void SetModelDropdownData(CustomAssetDataRepository customAssetDataRepository)
|
||||
{
|
||||
modelList.Clear();
|
||||
|
||||
var assetDatas = customAssetDataRepository.assetDatas;
|
||||
modelList.AddRange(assetDatas);
|
||||
|
||||
foreach (var item in dynamicObjectItems)
|
||||
{
|
||||
item.SetModelList(modelList);
|
||||
}
|
||||
}
|
||||
private void OnClickAddDynamicObjectButton()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user