1
This commit is contained in:
@@ -2352,7 +2352,6 @@ MonoBehaviour:
|
||||
- rid: 3736623274279305216
|
||||
- rid: 3736623274279305217
|
||||
- rid: 3736623274279305218
|
||||
- rid: 3736623274279305219
|
||||
- rid: 3736623274279305220
|
||||
loadLocalPackageOnStart: 1
|
||||
references:
|
||||
@@ -2390,10 +2389,6 @@ MonoBehaviour:
|
||||
type: {class: Reference, ns: BITKit, asm: BITKit}
|
||||
data:
|
||||
value: System.dll
|
||||
- rid: 3736623274279305219
|
||||
type: {class: Reference, ns: BITKit, asm: BITKit}
|
||||
data:
|
||||
value: System.Linq.dll
|
||||
- rid: 3736623274279305220
|
||||
type: {class: Reference, ns: BITKit, asm: BITKit}
|
||||
data:
|
||||
@@ -9746,6 +9741,7 @@ Transform:
|
||||
m_Children:
|
||||
- {fileID: 1198269870}
|
||||
- {fileID: 324953849}
|
||||
- {fileID: 495300441}
|
||||
- {fileID: 2087774128}
|
||||
- {fileID: 1237214210}
|
||||
- {fileID: 1228132877}
|
||||
@@ -10246,6 +10242,68 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 4489127147763580709, guid: d14be1a56b99bf544873c5036097bd21, type: 3}
|
||||
m_PrefabInstance: {fileID: 493196758}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &495300440
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 475671028}
|
||||
m_Modifications:
|
||||
- target: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4133803532130016016, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: UXContextMenu
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
--- !u!4 &495300441 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 3097860720836592501, guid: c1713b68ecd4afe42a625ebb0d0638d6, type: 3}
|
||||
m_PrefabInstance: {fileID: 495300440}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &496017006
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -24410,6 +24468,7 @@ GameObject:
|
||||
- component: {fileID: 1237214214}
|
||||
- component: {fileID: 1237214215}
|
||||
- component: {fileID: 1237214216}
|
||||
- component: {fileID: 1237214217}
|
||||
m_Layer: 0
|
||||
m_Name: CuttingPanel
|
||||
m_TagString: Untagged
|
||||
@@ -24603,6 +24662,20 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
document: {fileID: 1237214209}
|
||||
--- !u!114 &1237214217
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1237214207}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 9f42749e7d8caa64c8db10aa8554e974, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
defaultTexture: {fileID: 0}
|
||||
worldImage: {fileID: 1354611256}
|
||||
--- !u!1 &1238623440
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -26429,6 +26502,78 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 775197342873461764, guid: db2d086fe2ffee04dbb1f233c83f567a, type: 3}
|
||||
m_PrefabInstance: {fileID: 1351894160}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &1354611254
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1354611255}
|
||||
- component: {fileID: 1354611257}
|
||||
- component: {fileID: 1354611256}
|
||||
m_Layer: 5
|
||||
m_Name: RawImage
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1354611255
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1354611254}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: -0.02}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1538010304}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: -0}
|
||||
m_SizeDelta: {x: 1, y: 1}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1354611256
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1354611254}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 1344c3c82d62a2a41a3576d8abb8e3ea, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 0
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 0
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Texture: {fileID: 2800000, guid: 83d6032243d653847999ca08250080a1, type: 3}
|
||||
m_UVRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
--- !u!222 &1354611257
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1354611254}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1001 &1363149856
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -29382,6 +29527,66 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 8599469349454154211, guid: 9f0beeaea1b73af4095c93b67341a366, type: 3}
|
||||
m_PrefabInstance: {fileID: 1523455616}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &1538010302
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1538010304}
|
||||
- component: {fileID: 1538010303}
|
||||
m_Layer: 5
|
||||
m_Name: Canvas
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!223 &1538010303
|
||||
Canvas:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1538010302}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 3
|
||||
m_RenderMode: 2
|
||||
m_Camera: {fileID: 420814444}
|
||||
m_PlaneDistance: 100
|
||||
m_PixelPerfect: 0
|
||||
m_ReceivesEvents: 1
|
||||
m_OverrideSorting: 0
|
||||
m_OverridePixelPerfect: 0
|
||||
m_SortingBucketNormalizedSize: 0
|
||||
m_VertexColorAlwaysGammaSpace: 0
|
||||
m_AdditionalShaderChannelsFlag: 0
|
||||
m_UpdateRectTransformForStandalone: 0
|
||||
m_SortingLayerID: 0
|
||||
m_SortingOrder: 0
|
||||
m_TargetDisplay: 0
|
||||
--- !u!224 &1538010304
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1538010302}
|
||||
m_LocalRotation: {x: 0.70710576, y: -0, z: -0, w: 0.7071079}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 1354611255}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 1}
|
||||
m_SizeDelta: {x: 2, y: 2}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1001 &1541124407
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -42525,6 +42730,7 @@ SceneRoots:
|
||||
- {fileID: 123695859}
|
||||
- {fileID: 1460504354}
|
||||
- {fileID: 1859425352}
|
||||
- {fileID: 1538010304}
|
||||
- {fileID: 375808614}
|
||||
- {fileID: 1548654985}
|
||||
- {fileID: 2104798764}
|
||||
|
78
Assets/Artists/Scripts/UX/UXReferenceImage.cs
Normal file
78
Assets/Artists/Scripts/UX/UXReferenceImage.cs
Normal file
@@ -0,0 +1,78 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using AnotherFileBrowser.Windows;
|
||||
using BITKit;
|
||||
using BITKit.IO;
|
||||
using BITKit.UX;
|
||||
using Cysharp.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using UnityEngine.UIElements;
|
||||
using Button = UnityEngine.UIElements.Button;
|
||||
using Image = UnityEngine.UI.Image;
|
||||
using Slider = UnityEngine.UIElements.Slider;
|
||||
|
||||
namespace BITFactory.Cutting.UX
|
||||
{
|
||||
public class UXReferenceImage : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private Texture2D defaultTexture;
|
||||
|
||||
[SerializeField] private RawImage worldImage;
|
||||
|
||||
[UXBindPath("pick-image-button")] private Button pickImageButton;
|
||||
[UXBindPath("reference-image")] private VisualElement referenceImage;
|
||||
[UXBindPath("2d-opacity-slider")] private Slider opacitySlider;
|
||||
[UXBindPath("3d-opacity-slider")] private Slider worldOpacitySlider;
|
||||
|
||||
private void Start()
|
||||
{
|
||||
UXUtils.Inject(this);
|
||||
|
||||
opacitySlider.RegisterValueChangedCallback(x => { referenceImage.SetOpacity(x.newValue); });
|
||||
worldOpacitySlider.RegisterValueChangedCallback(x =>
|
||||
{
|
||||
worldImage.color = new Color(1, 1, 1, x.newValue);
|
||||
});
|
||||
|
||||
referenceImage.SetOpacity(0);
|
||||
worldImage.color = new Color(1, 1, 1, 0);
|
||||
|
||||
opacitySlider.SetValueWithoutNotify(0);
|
||||
worldOpacitySlider.SetValueWithoutNotify(0);
|
||||
|
||||
if (defaultTexture)
|
||||
{
|
||||
worldImage.texture = defaultTexture;
|
||||
referenceImage.style.backgroundImage = defaultTexture;
|
||||
}
|
||||
|
||||
pickImageButton.clicked += PickImage;
|
||||
}
|
||||
|
||||
private void PickImage()
|
||||
{
|
||||
new Thread(() =>
|
||||
{
|
||||
new FileBrowser().OpenFileBrowser(new BrowserProperties(),PickImage);
|
||||
}).Start();
|
||||
}
|
||||
|
||||
private async void PickImage(string path)
|
||||
{
|
||||
await UniTask.SwitchToMainThread();
|
||||
if (destroyCancellationToken.IsCancellationRequested) return;
|
||||
var texture = new Texture2D(2, 2);
|
||||
if (texture.LoadImage(await System.IO.File.ReadAllBytesAsync(path)) is false)
|
||||
{
|
||||
Alert.Print("无法加载图片", "请检查选择的文件是否为图片");
|
||||
return;
|
||||
}
|
||||
worldImage.texture = texture;
|
||||
referenceImage.style.backgroundImage = texture;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -16,7 +16,8 @@
|
||||
"GUID:90b448749ba9be04ebf2eb5953b53caf",
|
||||
"GUID:2846c2d80db507f4485a0387d75322e4",
|
||||
"GUID:f602b6f914f91d4499383d874af1decd",
|
||||
"GUID:a0d51f691919122479ddf08b0a310ccc"
|
||||
"GUID:a0d51f691919122479ddf08b0a310ccc",
|
||||
"GUID:a11ff146d38b27a44af87b4b4d9c4ecb"
|
||||
],
|
||||
"includePlatforms": [],
|
||||
"excludePlatforms": [],
|
||||
|
@@ -3,9 +3,18 @@
|
||||
<ui:Template name="Template_MaterialBoard" src="project://database/Assets/Artists/UX/Template_MaterialBoard.uxml?fileID=9197481963319205126&guid=9aa61a4d8ecb80547b4e57b7e4d01500&type=3#Template_MaterialBoard" />
|
||||
<Style src="project://database/Assets/BITKit/Unity/UX/Common/Common.uss?fileID=7433441132597879392&guid=a3a69d3518fd02b489e721f3c5b0b539&type=3#Common" />
|
||||
<Style src="project://database/Assets/Artists/UX/CuttingPanel.uss?fileID=7433441132597879392&guid=114425baa6f9b77488ae3597936f2944&type=3#CuttingPanel" />
|
||||
<ui:VisualElement picking-mode="Ignore" class="root">
|
||||
<ui:VisualElement name="reference-image" picking-mode="Ignore" class="flex-center" style="width: 256px; height: 256px; background-image: url("project://database/Assets/BITKit/Unity/Art/Icons/Icon_Settings.png?fileID=2800000&guid=83d6032243d653847999ca08250080a1&type=3#Icon_Settings");" />
|
||||
</ui:VisualElement>
|
||||
<ui:VisualElement name="bg" picking-mode="Ignore" class="photo-mode" style="flex-grow: 1;">
|
||||
<ui:VisualElement picking-mode="Ignore" style="background-image: url('project://database/Assets/BITKit/Unity/Art/Backgrounds/BG_Gradient_Half.png?fileID=2800000&guid=901684d8a74b397439bb9c11b92d0cc7&type=3#BG_Gradient_Half'); -unity-background-image-tint-color: rgb(0, 0, 0); position: absolute; left: 0; top: 0; bottom: 0; right: 82%;" />
|
||||
<ui:VisualElement picking-mode="Ignore" style="background-image: url('project://database/Assets/BITKit/Unity/Art/Backgrounds/BG_Gradient_Half.png?fileID=2800000&guid=901684d8a74b397439bb9c11b92d0cc7&type=3#BG_Gradient_Half'); -unity-background-image-tint-color: rgb(0, 0, 0); position: absolute; left: 82%; top: 0; bottom: 0; right: 0; rotate: 180deg;" />
|
||||
<ui:VisualElement picking-mode="Ignore" style="background-image: url("project://database/Assets/BITKit/Unity/Art/Backgrounds/BG_Gradient_Half.png?fileID=2800000&guid=901684d8a74b397439bb9c11b92d0cc7&type=3#BG_Gradient_Half"); -unity-background-image-tint-color: rgb(0, 0, 0); position: absolute; left: 0; top: 0; bottom: 0; right: 82%;" />
|
||||
<ui:VisualElement picking-mode="Ignore" style="background-image: url("project://database/Assets/BITKit/Unity/Art/Backgrounds/BG_Gradient_Half.png?fileID=2800000&guid=901684d8a74b397439bb9c11b92d0cc7&type=3#BG_Gradient_Half"); -unity-background-image-tint-color: rgb(0, 0, 0); position: absolute; left: 82%; top: 0; bottom: 0; right: 0; rotate: 180deg;" />
|
||||
</ui:VisualElement>
|
||||
<ui:VisualElement name="LB" picking-mode="Ignore" class="root" style="top: 0; left: 64px; bottom: 64px; align-items: flex-start; justify-content: flex-end;">
|
||||
<ui:VisualElement picking-mode="Ignore" style="flex-direction: row; border-bottom-width: 1px; border-left-color: rgba(255, 255, 255, 0.5); border-right-color: rgba(255, 255, 255, 0.5); border-top-color: rgba(255, 255, 255, 0.5); border-bottom-color: rgba(255, 255, 255, 0.5);">
|
||||
<ui:Label tabindex="-1" text="[按住 鼠标中键] [鼠标左键] [Shift+WASD]" parse-escape-sequences="true" display-tooltip-when-elided="true" picking-mode="Ignore" />
|
||||
<ui:Label tabindex="-1" text="旋转视角 使用笔刷操作 移动视角" parse-escape-sequences="true" display-tooltip-when-elided="true" picking-mode="Ignore" />
|
||||
</ui:VisualElement>
|
||||
</ui:VisualElement>
|
||||
<ui:VisualElement picking-mode="Ignore" name="L" class="root theme-dark photo-mode">
|
||||
<ui:VisualElement picking-mode="Ignore" style="margin-top: auto; margin-right: auto; margin-bottom: auto; margin-left: 64px; min-width: 64px; flex-direction: row; align-items: center;">
|
||||
@@ -66,6 +75,15 @@
|
||||
</ui:VisualElement>
|
||||
<ui:VisualElement picking-mode="Ignore" name="R" class="root theme-dark photo-mode">
|
||||
<ui:VisualElement picking-mode="Ignore" style="margin-top: auto; margin-right: 64px; margin-bottom: auto; margin-left: auto; flex-direction: row; align-items: stretch; width: auto; height: 512px; min-width: 256px;">
|
||||
<ui:VisualElement>
|
||||
<ui:Label tabindex="-1" text="辅助功能" parse-escape-sequences="true" display-tooltip-when-elided="true" class="tl" />
|
||||
<ui:Label tabindex="-1" text="参考图形" parse-escape-sequences="true" display-tooltip-when-elided="true" class="tm" />
|
||||
<ui:Button text="选择图像" parse-escape-sequences="true" display-tooltip-when-elided="true" name="pick-image-button" tooltip="复制到剪贴板" />
|
||||
<ui:Label tabindex="-1" text="屏幕空间不透明度" parse-escape-sequences="true" display-tooltip-when-elided="true" />
|
||||
<ui:Slider high-value="1" name="2d-opacity-slider" style="width: 128px;" />
|
||||
<ui:Label tabindex="-1" text="3D空间不透明度" parse-escape-sequences="true" display-tooltip-when-elided="true" />
|
||||
<ui:Slider high-value="1" name="3d-opacity-slider" style="width: 128px;" />
|
||||
</ui:VisualElement>
|
||||
<ui:VisualElement picking-mode="Ignore">
|
||||
<ui:Label tabindex="-1" text="用户指令" parse-escape-sequences="true" display-tooltip-when-elided="true" class="tl" />
|
||||
<ui:Button text="导出切割数据" parse-escape-sequences="true" display-tooltip-when-elided="true" name="export-button" tooltip="复制到剪贴板" />
|
||||
@@ -116,7 +134,7 @@
|
||||
<ui:VisualElement picking-mode="Ignore">
|
||||
<ui:VisualElement picking-mode="Ignore" style="flex-direction: row;">
|
||||
<ui:VisualElement name="VisualElement" style="width: 48px; height: 48px; background-color: rgba(32, 32, 32, 0);">
|
||||
<ui:VisualElement name="VisualElement" class="root" style="background-image: url('project://database/Assets/BITKit/Unity/Art/Icons/EditorIcons/processed/d_Prefab%20Icon.png?fileID=2800000&guid=4bf02adfc0d27c542bc29a373f850f5f&type=3#d_Prefab Icon'); margin-top: 8px; margin-right: 8px; margin-bottom: 8px; margin-left: 8px;" />
|
||||
<ui:VisualElement name="VisualElement" class="root" style="background-image: url("project://database/Assets/BITKit/Unity/Art/Icons/EditorIcons/processed/d_Prefab%20Icon.png?fileID=2800000&guid=4bf02adfc0d27c542bc29a373f850f5f&type=3#d_Prefab Icon"); margin-top: 8px; margin-right: 8px; margin-bottom: 8px; margin-left: 8px;" />
|
||||
</ui:VisualElement>
|
||||
<ui:Label tabindex="-1" text="更换切削板" parse-escape-sequences="true" display-tooltip-when-elided="true" class="tl" />
|
||||
</ui:VisualElement>
|
||||
|
@@ -45,7 +45,7 @@ namespace BITKit
|
||||
#if NET5_0_OR_GREATER
|
||||
Log($"[{DateTime.Now}]{typeof(T).Name}:{x}");
|
||||
#else
|
||||
Log($"{typeof(T).Name}:{x}");
|
||||
Log($"<color=#add8e6ff><b>{typeof(T).Name}</b></color>:{x}");
|
||||
#endif
|
||||
|
||||
currentType = typeof(T);
|
||||
@@ -69,7 +69,7 @@ namespace BITKit
|
||||
#endif
|
||||
public static void Warning<T>(object x)
|
||||
{
|
||||
Warning($"{typeof(T).Name}:{x}");
|
||||
Warning($"<color=#ffa500ff><b>{typeof(T).Name}</b></color>:{x}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -7,4 +7,8 @@ namespace BITKit.Mod
|
||||
{
|
||||
public string FolderPath;
|
||||
}
|
||||
public struct UninstallPackageCommand
|
||||
{
|
||||
public string PackageName;
|
||||
}
|
||||
}
|
||||
|
@@ -122,9 +122,9 @@ namespace BITKit
|
||||
CreateNoWindow = true,
|
||||
RedirectStandardOutput = true,
|
||||
RedirectStandardError = true,
|
||||
StandardErrorEncoding = System.Text.Encoding.UTF8,
|
||||
StandardInputEncoding = System.Text.Encoding.UTF8,
|
||||
StandardOutputEncoding = System.Text.Encoding.UTF8,
|
||||
StandardErrorEncoding = System.Text.Encoding.GetEncoding("gb2312"),
|
||||
StandardInputEncoding = System.Text.Encoding.GetEncoding("gb2312"),
|
||||
StandardOutputEncoding = System.Text.Encoding.GetEncoding("gb2312"),
|
||||
};
|
||||
var process = new Process()
|
||||
{
|
||||
|
6156
Assets/BITKit/Unity/Art/Fonts/SDF/Roboto-Regular SDF.asset
Normal file
6156
Assets/BITKit/Unity/Art/Fonts/SDF/Roboto-Regular SDF.asset
Normal file
File diff suppressed because one or more lines are too long
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Black.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Black.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-BlackItalic.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-BlackItalic.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Bold.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Bold.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-BoldItalic.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Italic.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Italic.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Light.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Light.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-LightItalic.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-LightItalic.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Medium.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Medium.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-MediumItalic.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-MediumItalic.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Regular.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Regular.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Thin.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-Thin.ttf
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-ThinItalic.ttf
Normal file
BIN
Assets/BITKit/Unity/Art/Fonts/TTF/Roboto/Roboto-ThinItalic.ttf
Normal file
Binary file not shown.
@@ -22,6 +22,11 @@ namespace BITKit.Console
|
||||
{
|
||||
public class BITConsole : MonoBehaviour
|
||||
{
|
||||
[RuntimeInitializeOnLoadMethod]
|
||||
private static void Reload()
|
||||
{
|
||||
Application.logMessageReceivedThreaded += EnqueueLog;
|
||||
}
|
||||
private class CommandSelector
|
||||
{
|
||||
public VisualElement Container { get; set; }
|
||||
@@ -163,17 +168,6 @@ namespace BITKit.Console
|
||||
|
||||
|
||||
}
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
Application.logMessageReceived += EnqueueLog;
|
||||
}
|
||||
|
||||
private void OnDisable()
|
||||
{
|
||||
Application.logMessageReceived -= EnqueueLog;
|
||||
}
|
||||
|
||||
private void OnNextLine()
|
||||
{
|
||||
if (outputString.Count is not 0 && outputString.Last() != string.Empty)
|
||||
|
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.CJK.dll
Normal file
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.CJK.dll
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.MidEast.dll
Normal file
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.MidEast.dll
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.Other.dll
Normal file
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.Other.dll
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.Rare.dll
Normal file
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.Rare.dll
Normal file
Binary file not shown.
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.West.dll
Normal file
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.West.dll
Normal file
Binary file not shown.
16
Assets/BITKit/Unity/Scripts/I18N/I18N.asmdef
Normal file
16
Assets/BITKit/Unity/Scripts/I18N/I18N.asmdef
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"name": "I18N",
|
||||
"rootNamespace": "",
|
||||
"references": [],
|
||||
"includePlatforms": [],
|
||||
"excludePlatforms": [
|
||||
"Editor"
|
||||
],
|
||||
"allowUnsafeCode": false,
|
||||
"overrideReferences": false,
|
||||
"precompiledReferences": [],
|
||||
"autoReferenced": true,
|
||||
"defineConstraints": [],
|
||||
"versionDefines": [],
|
||||
"noEngineReferences": false
|
||||
}
|
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.dll
Normal file
BIN
Assets/BITKit/Unity/Scripts/I18N/I18N.dll
Normal file
Binary file not shown.
@@ -2,6 +2,7 @@ using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
|
||||
#if UNITY_EDITOR
|
||||
using UnityEditor;
|
||||
@@ -17,6 +18,15 @@ namespace BITKit.Mod
|
||||
[SerializeField] private bool loadLocalPackageOnStart;
|
||||
private async void Start()
|
||||
{
|
||||
|
||||
if (Application.isEditor is false)
|
||||
{
|
||||
BIT4Log.Log<UnityModService>($"UnityPlayer所在位置:{Application.dataPath}");
|
||||
|
||||
BIT4Log.Log<UnityModService>($"{nameof(System.Linq)}位于{typeof(Enumerable).Assembly.Location}");
|
||||
}
|
||||
|
||||
|
||||
foreach (var x in referencedAssemblies)
|
||||
{
|
||||
var dllName = x.Value.Contains(".dll") ? x.Value : $"{x.Value}.dll";
|
||||
|
@@ -1,6 +1,7 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using BITKit.Net.LAN;
|
||||
using Cysharp.Threading.Tasks;
|
||||
@@ -23,8 +24,10 @@ namespace BITKit.Mod
|
||||
_broadcaster.StartListen();
|
||||
}
|
||||
|
||||
private void OnReceive(EndPoint arg1, byte[] bytes)
|
||||
private async void OnReceive(EndPoint arg1, byte[] bytes)
|
||||
{
|
||||
await UniTask.SwitchToMainThread();
|
||||
if(destroyCancellationToken.IsCancellationRequested) return;
|
||||
var command = BITBinary.ReadAsValue(bytes);
|
||||
switch (command)
|
||||
{
|
||||
@@ -32,6 +35,17 @@ namespace BITKit.Mod
|
||||
BIT4Log.Log<UnityWorkshopClient>($"收到加载命令:{loadFromFolderCommand.FolderPath}");
|
||||
ModService.LoadFromPackage(loadFromFolderCommand.FolderPath).Forget();
|
||||
break;
|
||||
case UninstallPackageCommand uninstallPackageCommand:
|
||||
BIT4Log.Log<UnityWorkshopClient>($"收到卸载命令:{uninstallPackageCommand.PackageName}");
|
||||
var mod = ModService.Mods.SingleOrDefault(x=>x.PackageName == uninstallPackageCommand.PackageName);
|
||||
if (mod is null)
|
||||
{
|
||||
BIT4Log.Warning<UnityWorkshopClient>($"未找到包:{uninstallPackageCommand.PackageName}");
|
||||
return;
|
||||
}
|
||||
ModService.UnLoad(mod);
|
||||
ModService.UnInstall(mod);
|
||||
break;
|
||||
default:
|
||||
BIT4Log.Log<UnityWorkshopClient>($"未知命令:{command}");
|
||||
break;
|
||||
|
@@ -99,15 +99,26 @@ namespace BITKit.UX
|
||||
{
|
||||
await UniTask.SwitchToMainThread();
|
||||
if (destroyCancellationToken.IsCancellationRequested) return;
|
||||
_modContainers.GetOrAdd(obj.Name,_=> Create(obj));
|
||||
|
||||
var container = _modContainers.GetOrAdd(obj.Name,_=> Create(obj));
|
||||
container.visualElement.RegisterCallback<MouseDownEvent>(x =>
|
||||
{
|
||||
if (x.button != 1) return;
|
||||
ContextMenuBuilder.Create().BuildAction("卸载", () =>
|
||||
{
|
||||
ModService.UnLoad(obj);
|
||||
ModService.UnInstall(obj);
|
||||
}).Build();
|
||||
});
|
||||
}
|
||||
private async void OnModUnLoaded(IMod obj)
|
||||
{
|
||||
await UniTask.SwitchToMainThread();
|
||||
if (destroyCancellationToken.IsCancellationRequested) return;
|
||||
var container = _modContainers.GetOrAdd(obj.Name,_=> Create(obj));
|
||||
container.toggle.SetValueWithoutNotify(false);
|
||||
//var container = _modContainers.GetOrAdd(obj.Name,_=> Create(obj));
|
||||
if(_modContainers.TryGetValue(obj.Name,out var container))
|
||||
{
|
||||
container.toggle.SetValueWithoutNotify(false);
|
||||
}
|
||||
}
|
||||
|
||||
private async void OnModLoaded(IMod obj)
|
||||
|
@@ -27,9 +27,9 @@ namespace BITKit
|
||||
CreateNoWindow = true,
|
||||
RedirectStandardOutput = true,
|
||||
RedirectStandardError =true,
|
||||
StandardErrorEncoding = System.Text.Encoding.UTF8,
|
||||
StandardInputEncoding = System.Text.Encoding.UTF8,
|
||||
StandardOutputEncoding = System.Text.Encoding.UTF8,
|
||||
StandardErrorEncoding = System.Text.Encoding.GetEncoding("gb2312"),
|
||||
//StandardInputEncoding = System.Text.Encoding.GetEncoding("gb2312"),
|
||||
StandardOutputEncoding = System.Text.Encoding.GetEncoding("gb2312"),
|
||||
};
|
||||
if(arguments != null)
|
||||
{
|
||||
|
@@ -5,7 +5,7 @@
|
||||
<ui:VisualElement name="Console" class="Console" style="width: 1024px; height: 768px; border-top-left-radius: 16px; border-bottom-left-radius: 16px; border-top-right-radius: 16px; border-bottom-right-radius: 16px; padding-left: 16px; padding-right: 16px; padding-top: 8px; padding-bottom: 8px; margin-left: auto; margin-right: auto; margin-top: auto; margin-bottom: auto;">
|
||||
<ui:Label text="Console" display-tooltip-when-elided="true" class="Console-Text" />
|
||||
<ui:ScrollView name="context-scrollview" class="Console-ScrollView" style="height: auto; flex-grow: 1; display: flex;">
|
||||
<ui:Label text="This is Console This is <size=24>Rich Text</size> This is <color=yellow>Warning</color> This is <color=red>Error</color> This is loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong text This is Console This is <size=24>Rich Text</size> This is <color=yellow>Warning</color> This is <color=red>Error</color> This is loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong text This is Console This is <size=24>Rich Text</size> This is <color=yellow>Warning</color> This is <color=red>Error</color> This is loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong text This is Console This is <size=24>Rich Text</size> This is <color=yellow>Warning</color> This is <color=red>Error</color> This is loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong text This is Console This is <size=24>Rich Text</size> This is <color=yellow>Warning</color> This is <color=red>Error</color> This is loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong text" display-tooltip-when-elided="true" name="Text" class="Console-Text" style="padding-left: 8px; padding-right: 8px; padding-top: 4px; padding-bottom: 4px; white-space: normal;" />
|
||||
<ui:Label text="This is Console This is <size=24>Rich Text</size> This is <color=yellow>Warning</color> This is <color=red>Error</color> This is loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong text This is Console This is <size=24>Rich Text</size> This is <color=yellow>Warning</color> This is <color=red>Error</color> This is loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong text <color=#add8e6ff><b>TypeName</b></color>:MyMessage" display-tooltip-when-elided="true" name="Text" enable-rich-text="true" parse-escape-sequences="false" class="Console-Text" style="padding-left: 8px; padding-right: 8px; padding-top: 4px; padding-bottom: 4px; white-space: normal;" />
|
||||
</ui:ScrollView>
|
||||
<ui:TextField picking-mode="Ignore" value="filler text" text="filler text" name="TextField" class="Console-TextField" style="height: 48px;" />
|
||||
</ui:VisualElement>
|
||||
|
@@ -58,7 +58,7 @@ TabBar Button:disabled {
|
||||
padding-top: 32px;
|
||||
padding-bottom: 32px;
|
||||
-unity-font-definition: initial;
|
||||
-unity-font: url('project://database/Assets/BITKit/Unity/Art/Fonts/TTF/SourceHanMono/SourceHanMono-Regular.ttc?fileID=12800000&guid=170bacfb8afc52a468d956884ff0be08&type=3#SourceHanMono-Regular');
|
||||
-unity-font: url("project://database/Assets/BITKit/Unity/Art/Fonts/TTF/SourceHanMono/SourceHanMono-Regular.ttc?fileID=12800000&guid=170bacfb8afc52a468d956884ff0be08&type=3#SourceHanMono-Regular");
|
||||
}
|
||||
|
||||
.pa-64 {
|
||||
@@ -107,7 +107,7 @@ TabBar Button:disabled {
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
-unity-font-definition: initial;
|
||||
-unity-font: url('project://database/Assets/BITKit/Unity/Art/Fonts/TTF/SourceHanMono/SourceHanMono-Regular.ttc?fileID=12800000&guid=170bacfb8afc52a468d956884ff0be08&type=3#SourceHanMono-Regular');
|
||||
-unity-font: url("project://database/Assets/BITKit/Unity/Art/Fonts/TTF/SourceHanMono/SourceHanMono-Regular.ttc?fileID=12800000&guid=170bacfb8afc52a468d956884ff0be08&type=3#SourceHanMono-Regular");
|
||||
padding-left: 6px;
|
||||
padding-right: 6px;
|
||||
padding-top: 6px;
|
||||
@@ -138,7 +138,7 @@ TabBar Button:disabled {
|
||||
}
|
||||
|
||||
.unity-text-element {
|
||||
-unity-font-definition: url('project://database/Assets/BITKit/Unity/Art/Fonts/SDF/SourceHanMono-Regular%20SDF.asset?fileID=11400000&guid=b3753d022dd4b4545b0e5f3f6e9a997f&type=2#Assets/BITKit/Unity/Art/Fonts/SDF/SourceHanMono-Regular SDF.asset');
|
||||
-unity-font-definition: url("project://database/Assets/BITKit/Unity/Art/Fonts/SDF/Roboto-Regular%20SDF.asset?fileID=11400000&guid=5b449e7b33d231a4085b869a8ae2c94c&type=2#Roboto-Regular SDF");
|
||||
}
|
||||
|
||||
#unity-text-input .unity-text-element {
|
||||
@@ -147,12 +147,12 @@ TabBar Button:disabled {
|
||||
|
||||
.theme-light .unity-text-element {
|
||||
color: rgb(31, 31, 31);
|
||||
-unity-font: url('project://database/Assets/BITKit/Unity/Art/Fonts/TTF/SourceHanMono/SourceHanMono-Medium.ttc?fileID=12800000&guid=c8058440fb1ea26488e022a5ee5b3b35&type=3#SourceHanMono-Medium');
|
||||
-unity-font: url("project://database/Assets/BITKit/Unity/Art/Fonts/TTF/SourceHanMono/SourceHanMono-Medium.ttc?fileID=12800000&guid=c8058440fb1ea26488e022a5ee5b3b35&type=3#SourceHanMono-Medium");
|
||||
}
|
||||
|
||||
.theme-dark .unity-text-element {
|
||||
color: rgb(231, 231, 231);
|
||||
-unity-font: url('project://database/Assets/BITKit/Unity/Art/Fonts/TTF/SourceHanMono/SourceHanMono-Medium.ttc?fileID=12800000&guid=c8058440fb1ea26488e022a5ee5b3b35&type=3#SourceHanMono-Medium');
|
||||
-unity-font: url("project://database/Assets/BITKit/Unity/Art/Fonts/TTF/SourceHanMono/SourceHanMono-Medium.ttc?fileID=12800000&guid=c8058440fb1ea26488e022a5ee5b3b35&type=3#SourceHanMono-Medium");
|
||||
}
|
||||
|
||||
.theme-dark DropdownField > VisualElement > VisualElement {
|
||||
|
33
Assets/BITKit/UnityPluginsSupport/Editor/Helper_I18N.cs
Normal file
33
Assets/BITKit/UnityPluginsSupport/Editor/Helper_I18N.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using UnityEditor;
|
||||
using UnityEditor.Callbacks;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
public class Helper_I18N : MonoBehaviour
|
||||
{
|
||||
[PostProcessBuild(1)]
|
||||
public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject)
|
||||
{
|
||||
return;
|
||||
var folder = Path.Combine(Path.GetDirectoryName(EditorApplication.applicationPath), "Data",
|
||||
"MonoBleedingEdge", "lib", "mono", "unityjit-win32");
|
||||
var list = new List<string>()
|
||||
{
|
||||
"I18N.CJK.dll", "I18N.dll", "I18N.MidEast.dll", "I18N.Other.dll", "I18N.Rare.dll", "I18N.West.dll"
|
||||
};
|
||||
foreach (var name in list)
|
||||
{
|
||||
var fileInfo = new FileInfo(Path.Combine(folder, name));
|
||||
var copyPath = Path.Combine(Path.GetDirectoryName(pathToBuiltProject),
|
||||
$"{Application.productName}_Data", "Plugins", "x86_64", name);
|
||||
fileInfo.CopyTo(copyPath);
|
||||
Debug.Log($"已复制{name}到{copyPath}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
46
Assets/BITKit/UnityPluginsSupport/Tests/MiscTest.cs
Normal file
46
Assets/BITKit/UnityPluginsSupport/Tests/MiscTest.cs
Normal file
@@ -0,0 +1,46 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using NUnit.Framework;
|
||||
using UnityEngine;
|
||||
using System.Text;
|
||||
using UnityEngine.TestTools;
|
||||
using System.Linq;
|
||||
using UnityEditor;
|
||||
using Random = UnityEngine.Random;
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
public class MiscTest
|
||||
{
|
||||
[Test]
|
||||
public static void CheckPath()
|
||||
{
|
||||
var reportBuilder = new StringBuilder();
|
||||
reportBuilder.AppendLine($"{nameof(EditorApplication.applicationPath)}:{EditorApplication.applicationPath}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.dataPath)}:{Application.dataPath}");
|
||||
reportBuilder.AppendLine($"{nameof(Environment.CurrentDirectory)}:{Environment.CurrentDirectory}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.streamingAssetsPath)}:{Application.streamingAssetsPath}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.persistentDataPath)}:{Application.persistentDataPath}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.temporaryCachePath)}:{Application.temporaryCachePath}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.consoleLogPath)}:{Application.consoleLogPath}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.installerName)}:{Application.installerName}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.companyName)}:{Application.companyName}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.productName)}:{Application.productName}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.version)}:{Application.version}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.unityVersion)}:{Application.unityVersion}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.identifier)}:{Application.identifier}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.internetReachability)}:{Application.internetReachability}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.systemLanguage)}:{Application.systemLanguage}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.platform)}:{Application.platform}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.isMobilePlatform)}:{Application.isMobilePlatform}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.isConsolePlatform)}:{Application.isConsolePlatform}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.isEditor)}:{Application.isEditor}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.isFocused)}:{Application.isFocused}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.isPlaying)}:{Application.isPlaying}");
|
||||
reportBuilder.AppendLine($"{nameof(Application.isBatchMode)}:{Application.isBatchMode}");
|
||||
|
||||
Debug.Log(reportBuilder.ToString());
|
||||
}
|
||||
}
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using BITKit;
|
||||
using BITKit.CommandPattern;
|
||||
@@ -17,6 +18,12 @@ namespace BITFactory.Cutting.Mod
|
||||
public override string PackageName { get; set; } = "iFactory.Cutting.Mod.auto_save_images";
|
||||
public override string Name { get; set; } = "自动保存导出数据";
|
||||
|
||||
public override string Description { get; set; } =
|
||||
@"""
|
||||
自动保存导出的数据到该程序所在目录下,并且在导出后弹出对话框提示
|
||||
导出的格式为export_{Timestamp}.cfg
|
||||
""";
|
||||
|
||||
[Inject] private ICuttingTool _cuttingTool;
|
||||
[Inject] private IUXDialogue _dialogue;
|
||||
|
||||
@@ -38,40 +45,26 @@ namespace BITFactory.Cutting.Mod
|
||||
var commands = obj.OfType<ICuttingCommand>().ToArray();
|
||||
var stringBuilder = new System.Text.StringBuilder();
|
||||
var path = Path.Combine(FolderPath, $"export_{DateTime.Now.Ticks}.cfg");
|
||||
stringBuilder.AppendLine($"导出时间: {DateTime.Now},导出命令数量: {commands.Length}");
|
||||
stringBuilder.AppendLine($"导出时间: {DateTime.Now},导出命令数量: {obj.Length},有效命名数量: {commands.Length}");
|
||||
foreach (var command in commands)
|
||||
{
|
||||
if(command is CuttingPointCommand pointCommand)
|
||||
switch (command)
|
||||
{
|
||||
stringBuilder.AppendLine(
|
||||
$"切削点: {pointCommand.PlanePoint.x} {pointCommand.PlanePoint.y} {pointCommand.PlanePoint.z}");
|
||||
case CuttingPointCommand pointCommand:
|
||||
stringBuilder.AppendLine(
|
||||
$"切削点: {pointCommand.PlanePoint.x} {pointCommand.PlanePoint.y} {pointCommand.PlanePoint.z}");
|
||||
break;
|
||||
case CuttingLineCommand lineCommand:
|
||||
stringBuilder.AppendLine($"切削线:{lineCommand.Line.Length}");
|
||||
foreach (var linePos in lineCommand.Line)
|
||||
{
|
||||
stringBuilder.AppendLine($"切削线点: {linePos.x} {linePos.y} {linePos.z}");
|
||||
}
|
||||
break;
|
||||
default:
|
||||
stringBuilder.AppendLine($"{command.Name}:{command.GetType().FullName}");
|
||||
break;
|
||||
}
|
||||
else if(command is CuttingLineCommand lineCommand)
|
||||
{
|
||||
stringBuilder.AppendLine($"切削线:{lineCommand.Line.Length}");
|
||||
foreach (var linePos in lineCommand.Line)
|
||||
{
|
||||
stringBuilder.AppendLine($"切削线点: {linePos.x} {linePos.y} {linePos.z}");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
stringBuilder.AppendLine($"{command.Name}:{command}");
|
||||
}
|
||||
// switch (command)
|
||||
// {
|
||||
// case CuttingPointCommand pointCommand:
|
||||
// stringBuilder.AppendLine(
|
||||
// $"切削点: {pointCommand.PlanePoint.x} {pointCommand.PlanePoint.y} {pointCommand.PlanePoint.z}");
|
||||
// break;
|
||||
// case CuttingLineCommand lineCommand:
|
||||
// stringBuilder.AppendLine($"切削线:{lineCommand.Line.Length}");
|
||||
// foreach (var linePos in lineCommand.Line)
|
||||
// {
|
||||
// stringBuilder.AppendLine($"切削线点: {linePos.x} {linePos.y} {linePos.z}");
|
||||
// }
|
||||
// break;
|
||||
// }
|
||||
}
|
||||
|
||||
File.WriteAllText(path, stringBuilder.ToString());
|
||||
|
@@ -1,66 +0,0 @@
|
||||
导出时间: 2024/3/4 17:26:34,导出命令数量: 65
|
||||
切削球:X[0.27]Y[1.00]Z[-0.18]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.17]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.16]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.15]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.13]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.12]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.06]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.05]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.04]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.26]Y[1.00]Z[-0.03]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.25]Y[1.00]Z[-0.03]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.23]Y[1.00]Z[-0.03]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.22]Y[1.00]Z[-0.03]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[-0.03]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.20]Y[1.00]Z[-0.03]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.19]Y[1.00]Z[-0.03]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.04]Y[1.00]Z[-0.20]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.04]Y[1.00]Z[-0.18]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.04]Y[1.00]Z[-0.17]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.03]Y[1.00]Z[-0.16]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.03]Y[1.00]Z[-0.15]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.03]Y[1.00]Z[-0.14]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.03]Y[1.00]Z[-0.12]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.03]Y[1.00]Z[-0.11]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.03]Y[1.00]Z[-0.09]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.02]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.02]Y[1.00]Z[-0.07]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.02]Y[1.00]Z[-0.06]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.04]Y[1.00]Z[-0.06]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.05]Y[1.00]Z[-0.06]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.06]Y[1.00]Z[-0.06]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.20]Y[1.00]Z[0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[0.11]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[0.13]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[0.14]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[0.16]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[0.17]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[0.19]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[0.20]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[0.21]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[0.22]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.20]Y[1.00]Z[0.23]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.19]Y[1.00]Z[0.23]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.18]Y[1.00]Z[0.23]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.16]Y[1.00]Z[0.23]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.15]Y[1.00]Z[0.23]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.14]Y[1.00]Z[0.23]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.13]Y[1.00]Z[0.23]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.08]Y[1.00]Z[0.11]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.08]Y[1.00]Z[0.12]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.08]Y[1.00]Z[0.13]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.08]Y[1.00]Z[0.15]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.07]Y[1.00]Z[0.16]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.07]Y[1.00]Z[0.18]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.07]Y[1.00]Z[0.19]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.07]Y[1.00]Z[0.20]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.08]Y[1.00]Z[0.21]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.09]Y[1.00]Z[0.20]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.11]Y[1.00]Z[0.20]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.12]Y[1.00]Z[0.20]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.13]Y[1.00]Z[0.20]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.14]Y[1.00]Z[0.20]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.15]Y[1.00]Z[0.19]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
@@ -0,0 +1,48 @@
|
||||
导出时间: 2024/3/4 23:35:49,导出命令数量: 47,有效命名数量: 47
|
||||
切削球:X[0.26]Y[1.00]Z[-0.23]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.26]Y[1.00]Z[-0.22]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.26]Y[1.00]Z[-0.21]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.26]Y[1.00]Z[-0.19]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.26]Y[1.00]Z[-0.17]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.26]Y[1.00]Z[-0.16]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.26]Y[1.00]Z[-0.15]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.13]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.12]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.11]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.26]Y[1.00]Z[-0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.24]Y[1.00]Z[-0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.23]Y[1.00]Z[-0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.21]Y[1.00]Z[-0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.20]Y[1.00]Z[-0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.19]Y[1.00]Z[-0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.01]Y[1.00]Z[-0.19]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.01]Y[1.00]Z[-0.17]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.01]Y[1.00]Z[-0.16]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.02]Y[1.00]Z[-0.14]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.02]Y[1.00]Z[-0.13]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.02]Y[1.00]Z[-0.11]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.02]Y[1.00]Z[-0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.03]Y[1.00]Z[-0.09]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.03]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.01]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.00]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.01]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.02]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.03]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.04]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.10]Y[1.00]Z[-0.17]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.10]Y[1.00]Z[-0.15]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.10]Y[1.00]Z[-0.13]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.10]Y[1.00]Z[-0.12]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.10]Y[1.00]Z[-0.11]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.10]Y[1.00]Z[-0.09]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.10]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.10]Y[1.00]Z[-0.06]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.10]Y[1.00]Z[-0.05]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.11]Y[1.00]Z[-0.05]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.12]Y[1.00]Z[-0.05]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.14]Y[1.00]Z[-0.06]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.16]Y[1.00]Z[-0.06]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.17]Y[1.00]Z[-0.07]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.19]Y[1.00]Z[-0.07]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.20]Y[1.00]Z[-0.07]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
@@ -0,0 +1,43 @@
|
||||
导出时间: 2024/3/5 0:58:33,导出命令数量: 42
|
||||
切削球:X[0.32]Y[1.00]Z[-0.23]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.31]Y[1.00]Z[-0.22]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.31]Y[1.00]Z[-0.20]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.31]Y[1.00]Z[-0.18]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.31]Y[1.00]Z[-0.17]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.31]Y[1.00]Z[-0.15]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.31]Y[1.00]Z[-0.13]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.30]Y[1.00]Z[-0.11]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.30]Y[1.00]Z[-0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.30]Y[1.00]Z[-0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.29]Y[1.00]Z[-0.06]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.29]Y[1.00]Z[-0.05]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.28]Y[1.00]Z[-0.04]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.03]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.27]Y[1.00]Z[-0.02]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.26]Y[1.00]Z[-0.01]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.25]Y[1.00]Z[-0.01]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.24]Y[1.00]Z[-0.01]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.22]Y[1.00]Z[0.00]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.20]Y[1.00]Z[0.00]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.19]Y[1.00]Z[0.00]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.18]Y[1.00]Z[0.00]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.17]Y[1.00]Z[0.01]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.15]Y[1.00]Z[0.01]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.14]Y[1.00]Z[0.01]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.02]Y[1.00]Z[-0.05]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.02]Y[1.00]Z[-0.04]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.01]Y[1.00]Z[-0.03]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.01]Y[1.00]Z[-0.01]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.00]Y[1.00]Z[0.01]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.00]Y[1.00]Z[0.02]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.00]Y[1.00]Z[0.04]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.00]Y[1.00]Z[0.05]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[0.00]Y[1.00]Z[0.06]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.01]Y[1.00]Z[0.08]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.02]Y[1.00]Z[0.09]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.03]Y[1.00]Z[0.09]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.04]Y[1.00]Z[0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.06]Y[1.00]Z[0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.07]Y[1.00]Z[0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.08]Y[1.00]Z[0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
||||
切削球:X[-0.10]Y[1.00]Z[0.10]R[0.01]:BITFactory.Cutting.CuttingSphereCommand
|
@@ -139,7 +139,7 @@ PlayerSettings:
|
||||
loadStoreDebugModeEnabled: 0
|
||||
visionOSBundleVersion: 1.0
|
||||
tvOSBundleVersion: 1.0
|
||||
bundleVersion: 0.82
|
||||
bundleVersion: 1.5
|
||||
preloadedAssets:
|
||||
- {fileID: 11400000, guid: 6c3ca1ca26aa7d84eaa7fee9094d9164, type: 2}
|
||||
metroInputSource: 0
|
||||
@@ -283,7 +283,14 @@ PlayerSettings:
|
||||
AndroidMinifyDebug: 0
|
||||
AndroidValidateAppBundleSize: 1
|
||||
AndroidAppBundleSizeToValidate: 150
|
||||
m_BuildTargetIcons: []
|
||||
m_BuildTargetIcons:
|
||||
- m_BuildTarget:
|
||||
m_Icons:
|
||||
- serializedVersion: 2
|
||||
m_Icon: {fileID: 2800000, guid: 2abb3796c35c2cb41924191ce0adb5a7, type: 3}
|
||||
m_Width: 128
|
||||
m_Height: 128
|
||||
m_Kind: 0
|
||||
m_BuildTargetPlatformIcons: []
|
||||
m_BuildTargetBatching:
|
||||
- m_BuildTarget: Standalone
|
||||
|
12
README.md
12
README.md
@@ -2,7 +2,7 @@
|
||||
|
||||

|
||||
|
||||

|
||||

|
||||
|
||||

|
||||
|
||||
@@ -103,6 +103,16 @@
|
||||
|
||||
**操作系统:** 仅限于64位`Windows 10`,`Windows 11`或以上
|
||||
## 更新日志
|
||||
### 2024年3月5日
|
||||
- 更改动态编译器从`MCS`更改为`Roslyn`
|
||||
- 添加了在左下角的`按键提示`
|
||||
- 添加了位于菜单右侧的`辅助功能`
|
||||
- 添加了基于世界空间的辅助3D参考
|
||||
- 添加了基于屏幕空间的辅助2D参考
|
||||
- 添加了位于上方的`创意工坊`快速访问按钮
|
||||
- Mod管理器添加了`卸载`按钮,在列表中右键点击Mod可以卸载
|
||||
- Mod管理器添加了`重载`按钮,可以快速重载Mod,用于快速调试
|
||||
- 更改默认Mod图标
|
||||
### 2024年1月25日
|
||||
- 添加了运行时`MonoBleedingEdge`支持,可以在运行时动态编译`.cs`
|
||||
- 添加了运行时安装`MonoBleedingEdge`支持
|
||||
|
Reference in New Issue
Block a user