This commit is contained in:
parent
b2c7b7badb
commit
5ad1d14b3d
|
|
@ -45,12 +45,14 @@
|
||||||
<Analyzer Include="E:\Program Files\Unity 2022.3.22f1\Editor\Data\Tools\Unity.SourceGenerators\Unity.Properties.SourceGenerator.dll" />
|
<Analyzer Include="E:\Program Files\Unity 2022.3.22f1\Editor\Data\Tools\Unity.SourceGenerators\Unity.Properties.SourceGenerator.dll" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="Assets\taoruiqi\Script\ElectricCheckPen.cs" />
|
||||||
<Compile Include="Assets\Scripts\ProcessMode\ProcessMode.cs" />
|
<Compile Include="Assets\Scripts\ProcessMode\ProcessMode.cs" />
|
||||||
<Compile Include="Assets\Scripts\ToolsPack\ToolsPackWindowManager.cs" />
|
<Compile Include="Assets\Scripts\ToolsPack\ToolsPackWindowManager.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Utility\FOVKick.cs" />
|
<Compile Include="Assets\Standard Assets 1\Utility\FOVKick.cs" />
|
||||||
<Compile Include="Assets\HighlightPlus\Scripts\HighlightEffectOccluderManager.cs" />
|
<Compile Include="Assets\HighlightPlus\Scripts\HighlightEffectOccluderManager.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Vehicles\Aircraft\Scripts\AeroplaneControlSurfaceAnimator.cs" />
|
<Compile Include="Assets\Standard Assets 1\Vehicles\Aircraft\Scripts\AeroplaneControlSurfaceAnimator.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Vehicles\Aircraft\Scripts\LandingGear.cs" />
|
<Compile Include="Assets\Standard Assets 1\Vehicles\Aircraft\Scripts\LandingGear.cs" />
|
||||||
|
<Compile Include="Assets\Scripts\ProcessMode\ActionWithDescription.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Utility\DragRigidbody.cs" />
|
<Compile Include="Assets\Standard Assets 1\Utility\DragRigidbody.cs" />
|
||||||
<Compile Include="Assets\HighlightPlus\Scripts\HighlightProfile.cs" />
|
<Compile Include="Assets\HighlightPlus\Scripts\HighlightProfile.cs" />
|
||||||
<Compile Include="Assets\StandaloneFileBrowser\Sample\CanvasSampleOpenFileTextMultiple.cs" />
|
<Compile Include="Assets\StandaloneFileBrowser\Sample\CanvasSampleOpenFileTextMultiple.cs" />
|
||||||
|
|
@ -65,6 +67,7 @@
|
||||||
<Compile Include="Assets\Standard Assets 1\Utility\WaypointCircuit.cs" />
|
<Compile Include="Assets\Standard Assets 1\Utility\WaypointCircuit.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Characters\ThirdPersonCharacter\Scripts\ThirdPersonUserControl.cs" />
|
<Compile Include="Assets\Standard Assets 1\Characters\ThirdPersonCharacter\Scripts\ThirdPersonUserControl.cs" />
|
||||||
<Compile Include="Assets\taoruiqi\Pliers.cs" />
|
<Compile Include="Assets\taoruiqi\Pliers.cs" />
|
||||||
|
<Compile Include="Assets\taoruiqi\AdhesiveTape.cs" />
|
||||||
<Compile Include="Assets\taoruiqi\WorkPermit.cs" />
|
<Compile Include="Assets\taoruiqi\WorkPermit.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\CrossPlatformInput\Scripts\PlatformSpecific\MobileInput.cs" />
|
<Compile Include="Assets\Standard Assets 1\CrossPlatformInput\Scripts\PlatformSpecific\MobileInput.cs" />
|
||||||
<Compile Include="Assets\StandaloneFileBrowser\StandaloneFileBrowserWindows.cs" />
|
<Compile Include="Assets\StandaloneFileBrowser\StandaloneFileBrowserWindows.cs" />
|
||||||
|
|
@ -109,6 +112,7 @@
|
||||||
<Compile Include="Assets\Standard Assets 1\CrossPlatformInput\Scripts\VirtualInput.cs" />
|
<Compile Include="Assets\Standard Assets 1\CrossPlatformInput\Scripts\VirtualInput.cs" />
|
||||||
<Compile Include="Assets\StandaloneFileBrowser\Sample\CanvasSampleSaveFileImage.cs" />
|
<Compile Include="Assets\StandaloneFileBrowser\Sample\CanvasSampleSaveFileImage.cs" />
|
||||||
<Compile Include="Assets\Ladder.cs" />
|
<Compile Include="Assets\Ladder.cs" />
|
||||||
|
<Compile Include="Assets\Scripts\ProcessMode\IncorrectClick.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Utility\ForcedReset.cs" />
|
<Compile Include="Assets\Standard Assets 1\Utility\ForcedReset.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Utility\DynamicShadowSettings.cs" />
|
<Compile Include="Assets\Standard Assets 1\Utility\DynamicShadowSettings.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Vehicles\Aircraft\Scripts\JetParticleEffect.cs" />
|
<Compile Include="Assets\Standard Assets 1\Vehicles\Aircraft\Scripts\JetParticleEffect.cs" />
|
||||||
|
|
@ -162,8 +166,10 @@
|
||||||
<Compile Include="Assets\HighlightPlus\Scripts\HighlightSeeThroughOccluder.cs" />
|
<Compile Include="Assets\HighlightPlus\Scripts\HighlightSeeThroughOccluder.cs" />
|
||||||
<Compile Include="Assets\Scripts\ProcessMode\ProcessUIManager.cs" />
|
<Compile Include="Assets\Scripts\ProcessMode\ProcessUIManager.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Vehicles\Aircraft\Scripts\AeroplaneAiControl.cs" />
|
<Compile Include="Assets\Standard Assets 1\Vehicles\Aircraft\Scripts\AeroplaneAiControl.cs" />
|
||||||
|
<Compile Include="Assets\JunctionBox.cs" />
|
||||||
<Compile Include="Assets\Scripts\FaultRecords\FaultRecord.cs" />
|
<Compile Include="Assets\Scripts\FaultRecords\FaultRecord.cs" />
|
||||||
<Compile Include="Assets\Scripts\ProcessMode\AnimationProcessManager.cs" />
|
<Compile Include="Assets\Scripts\ProcessMode\AnimationProcessManager.cs" />
|
||||||
|
<Compile Include="Assets\Screwdriver.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Characters\FirstPersonCharacter\Scripts\HeadBob.cs" />
|
<Compile Include="Assets\Standard Assets 1\Characters\FirstPersonCharacter\Scripts\HeadBob.cs" />
|
||||||
<Compile Include="Assets\Standard Assets 1\Characters\RollerBall\Scripts\BallUserControl.cs" />
|
<Compile Include="Assets\Standard Assets 1\Characters\RollerBall\Scripts\BallUserControl.cs" />
|
||||||
<Compile Include="Assets\StandaloneFileBrowser\StandaloneFileBrowserEditor.cs" />
|
<Compile Include="Assets\StandaloneFileBrowser\StandaloneFileBrowserEditor.cs" />
|
||||||
|
|
@ -174,6 +180,7 @@
|
||||||
<Compile Include="Assets\Standard Assets 1\Vehicles\Car\Scripts\Mudguard.cs" />
|
<Compile Include="Assets\Standard Assets 1\Vehicles\Car\Scripts\Mudguard.cs" />
|
||||||
<Compile Include="Assets\Scripts\DataConfigManager.cs" />
|
<Compile Include="Assets\Scripts\DataConfigManager.cs" />
|
||||||
<Compile Include="Assets\taoruiqi\Script\ThreeTransformerPhotovoltaicView.cs" />
|
<Compile Include="Assets\taoruiqi\Script\ThreeTransformerPhotovoltaicView.cs" />
|
||||||
|
<Compile Include="Assets\taoruiqi\Script\InteractiveObjects.cs" />
|
||||||
<None Include="Assets\TextMesh Pro\Shaders\TMPro.cginc" />
|
<None Include="Assets\TextMesh Pro\Shaders\TMPro.cginc" />
|
||||||
<None Include="Assets\TextMesh Pro\Shaders\TMP_SDF-Mobile Overlay.shader" />
|
<None Include="Assets\TextMesh Pro\Shaders\TMP_SDF-Mobile Overlay.shader" />
|
||||||
<None Include="Assets\StreamingAssets\FaultRecords\FaultRecords.json" />
|
<None Include="Assets\StreamingAssets\FaultRecords\FaultRecords.json" />
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,9 @@ public class ScriptDescriptionEditor : Editor
|
||||||
{
|
{
|
||||||
private GUIStyle descriptionStyle;
|
private GUIStyle descriptionStyle;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private void OnEnable()
|
private void OnEnable()
|
||||||
{
|
{
|
||||||
descriptionStyle = new GUIStyle(EditorStyles.label)
|
descriptionStyle = new GUIStyle(EditorStyles.label)
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ using System;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using DefaultNamespace;
|
using DefaultNamespace;
|
||||||
|
using DefaultNamespace.ProcessMode;
|
||||||
using Framework.Scripts.Runtime.Engine.Engine.Camera;
|
using Framework.Scripts.Runtime.Engine.Engine.Camera;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
|
|
@ -64,6 +65,10 @@ public class GameLauncher : MonoBehaviour
|
||||||
MotionEngine.CreateModule<ToolsPackManager>();
|
MotionEngine.CreateModule<ToolsPackManager>();
|
||||||
//数据配置文件
|
//数据配置文件
|
||||||
MotionEngine.CreateModule<DataConfigManager>();
|
MotionEngine.CreateModule<DataConfigManager>();
|
||||||
|
|
||||||
|
//流程管理器
|
||||||
|
MotionEngine.CreateModule<AnimationProcessManager>();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void HandleMotionFrameworkLog(ELogLevel logLevel, string log)
|
private void HandleMotionFrameworkLog(ELogLevel logLevel, string log)
|
||||||
|
|
|
||||||
|
|
@ -114,12 +114,12 @@ Material:
|
||||||
- _UVSec: 0
|
- _UVSec: 0
|
||||||
- _ZWrite: 1
|
- _ZWrite: 1
|
||||||
- __dirty: 0
|
- __dirty: 0
|
||||||
- _step_p1: 1
|
- _step_p1: 0
|
||||||
- _step_p2: 1
|
- _step_p2: 0
|
||||||
- _step_p3: 1
|
- _step_p3: 0
|
||||||
- _step_p4: 1
|
- _step_p4: 0
|
||||||
- _step_p5: 1
|
- _step_p5: 0
|
||||||
- _step_p6: 1
|
- _step_p6: 0
|
||||||
m_Colors:
|
m_Colors:
|
||||||
- _BaseCol: {r: 0.23429155, g: 0.28497556, b: 0.3679245, a: 0}
|
- _BaseCol: {r: 0.23429155, g: 0.28497556, b: 0.3679245, a: 0}
|
||||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
|
|
||||||
|
|
@ -20720,6 +20720,63 @@ Transform:
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 1886732940}
|
m_Father: {fileID: 1886732940}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1001 &1199227227
|
||||||
|
PrefabInstance:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Modification:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransformParent: {fileID: 0}
|
||||||
|
m_Modifications:
|
||||||
|
- target: {fileID: 1091812145067508994, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1091812145067508994, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1091812145067508994, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1091812145067508994, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.w
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1091812145067508994, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1091812145067508994, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1091812145067508994, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1091812145067508994, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1091812145067508994, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1091812145067508994, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 6026879024415736155, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
|
propertyPath: m_Name
|
||||||
|
value: APP
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
m_RemovedComponents: []
|
||||||
|
m_RemovedGameObjects: []
|
||||||
|
m_AddedGameObjects: []
|
||||||
|
m_AddedComponents: []
|
||||||
|
m_SourcePrefab: {fileID: 100100000, guid: fa12b84946083d14cb4447029910be28, type: 3}
|
||||||
--- !u!1 &1203342266
|
--- !u!1 &1203342266
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|
@ -26534,6 +26591,64 @@ CanvasRenderer:
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 1513575210}
|
m_GameObject: {fileID: 1513575210}
|
||||||
m_CullTransparentMesh: 1
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!1 &1516723166
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1516723168}
|
||||||
|
- component: {fileID: 1516723167}
|
||||||
|
- component: {fileID: 1516723169}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: GameObject
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!114 &1516723167
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1516723166}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 51f73ee94f284a86b677a6bc74544094, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
--- !u!4 &1516723168
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1516723166}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 303.8186, y: 1.9446667, z: 164.25206}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!114 &1516723169
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1516723166}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 63b7e72fa2d34c0ca56c938039f733e2, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
toolsPackScene: 1
|
||||||
--- !u!1 &1521115505
|
--- !u!1 &1521115505
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|
@ -28056,74 +28171,6 @@ CanvasRenderer:
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 1588077158}
|
m_GameObject: {fileID: 1588077158}
|
||||||
m_CullTransparentMesh: 1
|
m_CullTransparentMesh: 1
|
||||||
--- !u!1 &1610656807
|
|
||||||
GameObject:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
serializedVersion: 6
|
|
||||||
m_Component:
|
|
||||||
- component: {fileID: 1610656810}
|
|
||||||
- component: {fileID: 1610656809}
|
|
||||||
- component: {fileID: 1610656808}
|
|
||||||
m_Layer: 0
|
|
||||||
m_Name: EventSystem
|
|
||||||
m_TagString: Untagged
|
|
||||||
m_Icon: {fileID: 0}
|
|
||||||
m_NavMeshLayer: 0
|
|
||||||
m_StaticEditorFlags: 0
|
|
||||||
m_IsActive: 1
|
|
||||||
--- !u!114 &1610656808
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1610656807}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_SendPointerHoverToParent: 1
|
|
||||||
m_HorizontalAxis: Horizontal
|
|
||||||
m_VerticalAxis: Vertical
|
|
||||||
m_SubmitButton: Submit
|
|
||||||
m_CancelButton: Cancel
|
|
||||||
m_InputActionsPerSecond: 10
|
|
||||||
m_RepeatDelay: 0.5
|
|
||||||
m_ForceModuleActive: 0
|
|
||||||
--- !u!114 &1610656809
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1610656807}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_FirstSelected: {fileID: 0}
|
|
||||||
m_sendNavigationEvents: 1
|
|
||||||
m_DragThreshold: 10
|
|
||||||
--- !u!4 &1610656810
|
|
||||||
Transform:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1610656807}
|
|
||||||
serializedVersion: 2
|
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
||||||
m_ConstrainProportionsScale: 0
|
|
||||||
m_Children: []
|
|
||||||
m_Father: {fileID: 0}
|
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
||||||
--- !u!1 &1614669908
|
--- !u!1 &1614669908
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|
@ -230358,9 +230405,10 @@ SceneRoots:
|
||||||
- {fileID: 1886732940}
|
- {fileID: 1886732940}
|
||||||
- {fileID: 1467737217}
|
- {fileID: 1467737217}
|
||||||
- {fileID: 826737787}
|
- {fileID: 826737787}
|
||||||
- {fileID: 1610656810}
|
|
||||||
- {fileID: 1805985062}
|
- {fileID: 1805985062}
|
||||||
- {fileID: 1204801357}
|
- {fileID: 1204801357}
|
||||||
- {fileID: 1987581050}
|
- {fileID: 1987581050}
|
||||||
- {fileID: 1505150131}
|
- {fileID: 1505150131}
|
||||||
- {fileID: 1986025700}
|
- {fileID: 1986025700}
|
||||||
|
- {fileID: 1516723168}
|
||||||
|
- {fileID: 1199227227}
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ public class Screwdriver : MonoBehaviour
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 螺丝
|
/// 螺丝
|
||||||
/// </summary>
|
/// </summary>a
|
||||||
public GameObject[] ScrewObj;
|
public GameObject[] ScrewObj;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -202,6 +202,7 @@ public class Screwdriver : MonoBehaviour
|
||||||
ScrewL.gameObject.SetActive(false);
|
ScrewL.gameObject.SetActive(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 集中器右侧螺丝
|
/// 集中器右侧螺丝
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace DefaultNamespace.ProcessMode
|
||||||
|
{
|
||||||
|
public class ActionWithDescription
|
||||||
|
{
|
||||||
|
public List<GameObject> TargetObjects { get; set; } // 需要点击的目标物体列表
|
||||||
|
public Action Action { get; set; } // 与点击关联的动画或反应
|
||||||
|
public string Description { get; set; } // 动作描述
|
||||||
|
public int CurrentObjectIndex { get; set; } // 当前对象的点击索引
|
||||||
|
|
||||||
|
public ActionWithDescription(List<GameObject> targetObjects, Action action, string description)
|
||||||
|
{
|
||||||
|
TargetObjects = targetObjects ?? new List<GameObject>();
|
||||||
|
Action = action;
|
||||||
|
Description = description;
|
||||||
|
CurrentObjectIndex = 0; // 初始化为第一个对象
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f69314a2c8ae4f2f9463f3d3a29d7a30
|
||||||
|
timeCreated: 1718109086
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using MotionFramework;
|
using MotionFramework;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
@ -6,40 +7,16 @@ using UnityEngine.UI;
|
||||||
namespace DefaultNamespace.ProcessMode
|
namespace DefaultNamespace.ProcessMode
|
||||||
{
|
{
|
||||||
[ScriptDescription("流程模式管理器")]
|
[ScriptDescription("流程模式管理器")]
|
||||||
public class AnimationProcessManager : MonoBehaviour
|
public class AnimationProcessManager : ModuleSingleton<AnimationProcessManager>, IModule
|
||||||
{
|
{
|
||||||
private Dictionary<string, AnimationProcess> processes; // 存储不同类型流程的字典
|
private Dictionary<string, AnimationProcess> processes = new Dictionary<string, AnimationProcess>();
|
||||||
public ProcessMode currentMode; // 当前模式
|
public ProcessMode currentMode; // 当前模式
|
||||||
private int currentStepIndex; // 当前步骤索引
|
private int currentStepIndex; // 当前步骤索引
|
||||||
private ProcessUIManager uiManager; // 引用UIManager实例
|
private int currentActionIndex; // 当前动作索引,确保动作顺序
|
||||||
|
private int currentActionGameIndex; // 当前动作索引,确保动作顺序
|
||||||
|
private List<IncorrectClick> incorrectClicks; // 错误点击的记录列表
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 构造函数
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="uiManager">UIManager实例</param>
|
|
||||||
public AnimationProcessManager(ProcessUIManager uiManager)
|
|
||||||
{
|
|
||||||
this.uiManager = uiManager;
|
|
||||||
processes = new Dictionary<string, AnimationProcess>();
|
|
||||||
InitializeProcesses(); // 初始化流程
|
|
||||||
currentStepIndex = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 初始化所有流程
|
|
||||||
/// </summary>
|
|
||||||
private void InitializeProcesses()
|
|
||||||
{
|
|
||||||
AddProcess("Teaching"); // 添加教学流程
|
|
||||||
AddProcess("Training"); // 添加培训流程
|
|
||||||
AddProcess("Practice"); // 添加练习流程
|
|
||||||
AddProcess("Assessment"); // 添加考核流程
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 添加一个新的流程
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="type">流程类型</param>
|
|
||||||
public void AddProcess(string type)
|
public void AddProcess(string type)
|
||||||
{
|
{
|
||||||
if (!processes.ContainsKey(type))
|
if (!processes.ContainsKey(type))
|
||||||
|
|
@ -48,11 +25,6 @@ namespace DefaultNamespace.ProcessMode
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 向指定类型的流程中添加步骤
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="type">流程类型</param>
|
|
||||||
/// <param name="step">要添加的步骤</param>
|
|
||||||
public void AddStepToProcess(string type, AnimationStep step)
|
public void AddStepToProcess(string type, AnimationStep step)
|
||||||
{
|
{
|
||||||
if (processes.ContainsKey(type))
|
if (processes.ContainsKey(type))
|
||||||
|
|
@ -61,24 +33,6 @@ namespace DefaultNamespace.ProcessMode
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 获取指定类型流程的总评分
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="type">流程类型</param>
|
|
||||||
/// <returns>总评分</returns>
|
|
||||||
public float GetTotalScoreForProcess(string type)
|
|
||||||
{
|
|
||||||
if (processes.ContainsKey(type))
|
|
||||||
{
|
|
||||||
return processes[type].CalculateTotalScore();
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 处理用户点击事件
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="clickedObject">被点击的对象</param>
|
|
||||||
public void HandleClick(GameObject clickedObject)
|
public void HandleClick(GameObject clickedObject)
|
||||||
{
|
{
|
||||||
string type = currentMode.ToString();
|
string type = currentMode.ToString();
|
||||||
|
|
@ -90,35 +44,113 @@ namespace DefaultNamespace.ProcessMode
|
||||||
if (currentStepIndex < process.Steps.Count)
|
if (currentStepIndex < process.Steps.Count)
|
||||||
{
|
{
|
||||||
AnimationStep step = process.Steps[currentStepIndex];
|
AnimationStep step = process.Steps[currentStepIndex];
|
||||||
|
ActionWithDescription currentAction = step.Actions[currentActionIndex];
|
||||||
|
|
||||||
if (step.CorrectObject == clickedObject)
|
// 检查当前点击是否为当前动作预期的对象
|
||||||
|
if (currentAction.CurrentObjectIndex < currentAction.TargetObjects.Count &&
|
||||||
|
currentAction.TargetObjects[currentAction.CurrentObjectIndex] == clickedObject)
|
||||||
{
|
{
|
||||||
step.PlayAnimation();
|
Debug.Log($"正确点击了:{clickedObject.name}");
|
||||||
|
currentAction.CurrentObjectIndex++; // 正确点击,递增对象索引
|
||||||
|
|
||||||
switch (currentMode)
|
// 检查是否完成了当前动作中的所有对象点击
|
||||||
|
if (currentAction.CurrentObjectIndex >= currentAction.TargetObjects.Count)
|
||||||
{
|
{
|
||||||
case ProcessMode.Teaching:
|
Debug.Log($"完成了动作 {currentActionIndex + 1}");
|
||||||
uiManager.HighlightNextStep(step); // 高亮下一个步骤
|
step.PlayAnimation(currentActionIndex); // 播放当前动作的动画
|
||||||
break;
|
DisplayActionFeedback(currentMode, currentAction); // 显示反馈
|
||||||
case ProcessMode.Training:
|
|
||||||
uiManager.ShowTrainingStep(step); // 显示培训步骤
|
|
||||||
break;
|
|
||||||
case ProcessMode.Practice:
|
|
||||||
uiManager.ShowPracticeStep(step); // 显示练习步骤
|
|
||||||
break;
|
|
||||||
case ProcessMode.Assessment:
|
|
||||||
// 无提示
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
currentStepIndex++;
|
// 重置当前动作对象索引,并准备下一个动作
|
||||||
|
currentActionIndex++;
|
||||||
|
currentAction.CurrentObjectIndex = 0;
|
||||||
|
|
||||||
|
if (currentActionIndex >= step.Actions.Count)
|
||||||
|
{
|
||||||
|
Debug.Log("所有动作完成!");
|
||||||
|
currentActionIndex = 0; // 重置动作索引或进入下一个大步骤
|
||||||
|
currentStepIndex++;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Debug.Log("开始下一个动作!");
|
||||||
|
PrepareNextStep(currentMode, process, currentStepIndex);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Debug.Log("Incorrect object clicked.");
|
Debug.Log($"错误点击或顺序错误:{clickedObject.name}");
|
||||||
|
// 错误点击处理,可以选择重置当前动作的索引或其他处理逻辑
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void DisplayActionFeedback(ProcessMode mode, ActionWithDescription action)
|
||||||
|
{
|
||||||
|
switch (mode)
|
||||||
|
{
|
||||||
|
case ProcessMode.Teaching:
|
||||||
|
// 高亮显示下一个需要点击的地方
|
||||||
|
// HighlightNextStep(action.);
|
||||||
|
break;
|
||||||
|
case ProcessMode.Training:
|
||||||
|
// 在画面右上角显示流程步骤
|
||||||
|
// uiManager.ShowTrainingStep(action.Description);
|
||||||
|
break;
|
||||||
|
case ProcessMode.Practice:
|
||||||
|
// 只显示当前步骤
|
||||||
|
// uiManager.ShowPracticeStep(action.Description);
|
||||||
|
break;
|
||||||
|
case ProcessMode.Assessment:
|
||||||
|
// 无任何提示
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void PrepareNextStep(ProcessMode mode, AnimationProcess process, int nextStepIndex)
|
||||||
|
{
|
||||||
|
if (nextStepIndex < process.Steps.Count)
|
||||||
|
{
|
||||||
|
ActionWithDescription nextAction = process.Steps[nextStepIndex].Actions[0];
|
||||||
|
if (mode == ProcessMode.Teaching)
|
||||||
|
{
|
||||||
|
// HighlightNextStep(nextAction.TargetObject);
|
||||||
|
}
|
||||||
|
else if (mode == ProcessMode.Training)
|
||||||
|
{
|
||||||
|
// uiManager.ShowTrainingStep("开始下一个步骤...");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// uiManager.DisplayMessage("所有步骤完成!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void HighlightNextStep(GameObject target)
|
||||||
|
{
|
||||||
|
// 实现高亮逻辑,比如改变对象颜色或添加光环效果
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void OnCreate(object createParam)
|
||||||
|
{
|
||||||
|
processes = new Dictionary<string, AnimationProcess>();
|
||||||
|
incorrectClicks = new List<IncorrectClick>();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnUpdate()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnDestroy()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnGUI()
|
||||||
|
{
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -9,32 +9,24 @@ namespace DefaultNamespace.ProcessMode
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class AnimationStep
|
public class AnimationStep
|
||||||
{
|
{
|
||||||
public string Description { get; set; } // 步骤描述
|
public string StepDescription { get; set; } // 步骤描述
|
||||||
public float Score { get; set; } // 步骤评分
|
public float Score { get; set; } // 步骤评分
|
||||||
public Action Animation { get; private set; } // DOTween动画
|
public List<ActionWithDescription> Actions { get; private set; } // 动作列表
|
||||||
public GameObject CorrectObject { get; set; } // 正确的点击对象
|
|
||||||
|
|
||||||
/// <summary>
|
public AnimationStep(string stepDescription, float score, List<ActionWithDescription> actions)
|
||||||
/// 构造函数
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="description">步骤描述</param>
|
|
||||||
/// <param name="score">步骤评分</param>
|
|
||||||
/// <param name="animation">要播放的动画</param>
|
|
||||||
/// <param name="correctObject">正确的点击对象</param>
|
|
||||||
public AnimationStep(string description, float score, Action animation, GameObject correctObject)
|
|
||||||
{
|
{
|
||||||
Description = description;
|
StepDescription = stepDescription;
|
||||||
Score = score;
|
Score = score;
|
||||||
Animation = animation;
|
Actions = actions;
|
||||||
CorrectObject = correctObject;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
public void PlayAnimation(int index)
|
||||||
/// 播放动画
|
|
||||||
/// </summary>
|
|
||||||
public void PlayAnimation()
|
|
||||||
{
|
{
|
||||||
Animation?.Invoke();
|
if (index >= 0 && index < Actions.Count)
|
||||||
|
{
|
||||||
|
Actions[index].Action?.Invoke(); // 执行动画
|
||||||
|
Debug.Log(Actions[index].Description); // 输出动作描述
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace DefaultNamespace.ProcessMode
|
||||||
|
{
|
||||||
|
public class IncorrectClick
|
||||||
|
{
|
||||||
|
public GameObject ClickedObject { get; set; }
|
||||||
|
public int StepIndex { get; set; }
|
||||||
|
public int ActionIndex { get; set; } // 新增:动作索引
|
||||||
|
|
||||||
|
public IncorrectClick(GameObject clickedObject, int stepIndex, int actionIndex)
|
||||||
|
{
|
||||||
|
ClickedObject = clickedObject;
|
||||||
|
StepIndex = stepIndex;
|
||||||
|
ActionIndex = actionIndex;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e49a83ec6ff240d38d3b702d006793b2
|
||||||
|
timeCreated: 1718155453
|
||||||
|
|
@ -1,84 +1,85 @@
|
||||||
using UnityEngine;
|
// using UnityEngine;
|
||||||
using UnityEngine.UI;
|
// using UnityEngine.UI;
|
||||||
|
//
|
||||||
namespace DefaultNamespace.ProcessMode
|
// namespace DefaultNamespace.ProcessMode
|
||||||
{
|
// {
|
||||||
public class ProcessUIManager
|
// public class ProcessUIManager : MonoBehaviour
|
||||||
{
|
// {
|
||||||
public Text trainingTextBox; // 培训模式的文本框
|
// public Text trainingTextBox; // 培训模式的文本框
|
||||||
public Text practiceTextBox; // 练习模式的文本框
|
// public Text practiceTextBox; // 练习模式的文本框
|
||||||
public GameObject highlightObject; // 高亮对象,用于教学模式
|
// public GameObject highlightObject; // 高亮对象,用于教学模式
|
||||||
|
//
|
||||||
public AnimationProcessManager processManager; // 流程管理器实例
|
// public AnimationProcessManager processManager; // 流程管理器实例
|
||||||
|
//
|
||||||
private void Start()
|
// private void Start()
|
||||||
{
|
// {
|
||||||
processManager = new AnimationProcessManager(this); // 传递UIManager实例
|
// processManager = new AnimationProcessManager(); // 传递UIManager实例
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
private void Update()
|
// private void Update()
|
||||||
{
|
// {
|
||||||
if (Input.GetMouseButtonDown(0))
|
// if (Input.GetMouseButtonDown(0))
|
||||||
{
|
// {
|
||||||
GameObject clickedObject = DetectClickedObject();
|
// GameObject clickedObject = DetectClickedObject();
|
||||||
if (clickedObject != null)
|
// if (clickedObject != null)
|
||||||
{
|
// {
|
||||||
processManager.HandleClick(clickedObject);
|
// processManager.HandleClick(clickedObject);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 检测点击的对象
|
// /// 检测点击的对象
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
/// <returns>点击的对象</returns>
|
// /// <returns>点击的对象</returns>
|
||||||
private GameObject DetectClickedObject()
|
// private GameObject DetectClickedObject()
|
||||||
{
|
// {
|
||||||
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
|
// Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
|
||||||
RaycastHit hit;
|
// RaycastHit hit;
|
||||||
if (Physics.Raycast(ray, out hit))
|
// if (Physics.Raycast(ray, out hit))
|
||||||
{
|
// {
|
||||||
return hit.collider.gameObject;
|
// return hit.collider.gameObject;
|
||||||
}
|
// }
|
||||||
return null;
|
//
|
||||||
}
|
// return null;
|
||||||
|
// }
|
||||||
/// <summary>
|
//
|
||||||
/// 显示培训步骤信息
|
// /// <summary>
|
||||||
/// </summary>
|
// /// 显示培训步骤信息
|
||||||
/// <param name="step">当前步骤</param>
|
// /// </summary>
|
||||||
public void ShowTrainingStep(AnimationStep step)
|
// /// <param name="step">当前步骤</param>
|
||||||
{
|
// public void ShowTrainingStep(AnimationStep step)
|
||||||
if (trainingTextBox != null)
|
// {
|
||||||
{
|
// if (trainingTextBox != null)
|
||||||
trainingTextBox.text = step.Description;
|
// {
|
||||||
}
|
// trainingTextBox.text = step.Description;
|
||||||
}
|
// }
|
||||||
|
// }
|
||||||
/// <summary>
|
//
|
||||||
/// 显示练习步骤信息
|
// /// <summary>
|
||||||
/// </summary>
|
// /// 显示练习步骤信息
|
||||||
/// <param name="step">当前步骤</param>
|
// /// </summary>
|
||||||
public void ShowPracticeStep(AnimationStep step)
|
// /// <param name="step">当前步骤</param>
|
||||||
{
|
// public void ShowPracticeStep(AnimationStep step)
|
||||||
if (practiceTextBox != null)
|
// {
|
||||||
{
|
// if (practiceTextBox != null)
|
||||||
practiceTextBox.text = step.Description;
|
// {
|
||||||
}
|
// practiceTextBox.text = step.Description;
|
||||||
}
|
// }
|
||||||
|
// }
|
||||||
/// <summary>
|
//
|
||||||
/// 高亮显示下一个需要点击的地方(教学模式)
|
// /// <summary>
|
||||||
/// </summary>
|
// /// 高亮显示下一个需要点击的地方(教学模式)
|
||||||
/// <param name="step">当前步骤</param>
|
// /// </summary>
|
||||||
public void HighlightNextStep(AnimationStep step)
|
// /// <param name="step">当前步骤</param>
|
||||||
{
|
// public void HighlightNextStep(AnimationStep step)
|
||||||
if (highlightObject != null)
|
// {
|
||||||
{
|
// if (highlightObject != null)
|
||||||
highlightObject.SetActive(true);
|
// {
|
||||||
// 假设你有一个方法来定位高亮对象
|
// highlightObject.SetActive(true);
|
||||||
// highlightObject.transform.position = ...;
|
// // 假设你有一个方法来定位高亮对象
|
||||||
}
|
// // highlightObject.transform.position = ...;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
// }
|
||||||
|
|
@ -1,4 +1,8 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
using DG.Tweening;
|
using DG.Tweening;
|
||||||
|
using MotionFramework;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace DefaultNamespace.ProcessMode
|
namespace DefaultNamespace.ProcessMode
|
||||||
|
|
@ -7,40 +11,54 @@ namespace DefaultNamespace.ProcessMode
|
||||||
{
|
{
|
||||||
private AnimationProcessManager processManager;
|
private AnimationProcessManager processManager;
|
||||||
|
|
||||||
public GameObject device1; // 假设这是场景中的一个设备
|
|
||||||
public GameObject device2; // 假设这是场景中的另一个设备
|
|
||||||
|
|
||||||
private void Start()
|
private IEnumerator Start()
|
||||||
{
|
{
|
||||||
processManager = GetComponent<AnimationProcessManager>();
|
processManager = MotionEngine.GetModule<AnimationProcessManager>();
|
||||||
|
|
||||||
// 设置模式
|
|
||||||
processManager.currentMode = ProcessMode.Teaching;
|
|
||||||
|
|
||||||
// 创建步骤并避免未初始化的错误
|
yield return new WaitForSeconds(1);
|
||||||
AnimationStep step1 = null;
|
|
||||||
AnimationStep step2 = null;
|
|
||||||
|
|
||||||
|
|
||||||
|
processManager.AddProcess("Teaching");
|
||||||
|
|
||||||
|
List<ActionWithDescription> actions = CreateStepActions();
|
||||||
|
AnimationStep step = new AnimationStep($"描述步骤", 100, actions);
|
||||||
|
processManager.AddStepToProcess("Teaching", step);
|
||||||
|
|
||||||
step1 = new AnimationStep("Step 1: Click device1", 10, () =>
|
|
||||||
{
|
// List<ActionWithDescription> actions1 = CreateStepActions1();
|
||||||
device1.transform.DOMove(new Vector3(0, 1, 0), 1).OnComplete(() =>
|
// AnimationStep step1 = new AnimationStep($"描述步骤", 100, actions1);
|
||||||
{
|
// processManager.AddStepToProcess("Teaching", step1);
|
||||||
processManager.AddStepToProcess("Teaching", step1);
|
}
|
||||||
});
|
|
||||||
}, device1);
|
|
||||||
|
|
||||||
step2 = new AnimationStep("Step 2: Click device2", 20, () =>
|
private List<ActionWithDescription> CreateStepActions()
|
||||||
{
|
{
|
||||||
device2.transform.DOScale(new Vector3(2, 2, 2), 1).OnComplete(() =>
|
List<ActionWithDescription> actions = new List<ActionWithDescription>();
|
||||||
{
|
|
||||||
processManager.AddStepToProcess("Teaching", step2);
|
|
||||||
});
|
|
||||||
}, device2);
|
|
||||||
|
|
||||||
// 向流程中添加步骤
|
GameObject obj1 = GameObject.Find("变电箱_门");
|
||||||
processManager.AddStepToProcess("Teaching", step1);
|
GameObject 插座 = GameObject.Find("插座");
|
||||||
processManager.AddStepToProcess("Teaching", step2);
|
Action action1 = () => { };
|
||||||
|
Action action2 = () => { };
|
||||||
|
|
||||||
|
actions.Add(new ActionWithDescription(new List<GameObject>() { obj1,插座 }, action1, $"步骤 {1} 的动作描述"));
|
||||||
|
actions.Add(new ActionWithDescription(new List<GameObject>() { 插座,obj1}, action1, $"步骤 {2} 的动作描述"));
|
||||||
|
|
||||||
|
return actions;
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<ActionWithDescription> CreateStepActions1()
|
||||||
|
{
|
||||||
|
List<ActionWithDescription> actions = new List<ActionWithDescription>();
|
||||||
|
|
||||||
|
GameObject obj1 = GameObject.Find("变电箱_门");
|
||||||
|
GameObject 插座 = GameObject.Find("插座");
|
||||||
|
Action action1 = () => { };
|
||||||
|
|
||||||
|
actions.Add(new ActionWithDescription(new List<GameObject>() { obj1 }, action1, $"步骤 {1} 的动作描述"));
|
||||||
|
actions.Add(new ActionWithDescription(new List<GameObject>() { 插座 }, action1, $"步骤 {2} 的动作描述"));
|
||||||
|
|
||||||
|
return actions;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Update()
|
private void Update()
|
||||||
|
|
@ -64,6 +82,7 @@ namespace DefaultNamespace.ProcessMode
|
||||||
{
|
{
|
||||||
return hit.collider.gameObject;
|
return hit.collider.gameObject;
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ namespace ToolsPack
|
||||||
{
|
{
|
||||||
private HighlightEffect _highlight;
|
private HighlightEffect _highlight;
|
||||||
private int index;
|
private int index;
|
||||||
[SerializeField] private ModelTypeEnum _modelTypeEnum;
|
[SerializeField] private ModelTypeEnum _modelTypeEnum;
|
||||||
|
|
||||||
private void Awake()
|
private void Awake()
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -69,7 +69,7 @@ public class ElectricCheckPen : MonoBehaviour
|
||||||
{
|
{
|
||||||
ElectricCheckPenOBJ.gameObject.transform.DOLocalMove(new Vector3(3.334f, 0.489f, 0.107f), 1f).OnComplete(() =>
|
ElectricCheckPenOBJ.gameObject.transform.DOLocalMove(new Vector3(3.334f, 0.489f, 0.107f), 1f).OnComplete(() =>
|
||||||
{
|
{
|
||||||
|
|
||||||
ElectricCheckPenOBJ.gameObject.transform.DOLocalRotate(new Vector3(20.78f, 72.47f, 171.503f), 1.5f).OnComplete(() =>
|
ElectricCheckPenOBJ.gameObject.transform.DOLocalRotate(new Vector3(20.78f, 72.47f, 171.503f), 1.5f).OnComplete(() =>
|
||||||
{
|
{
|
||||||
Debug.Log("123");
|
Debug.Log("123");
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue