Skip to content
Snippets Groups Projects
Commit 41013d65 authored by BlackAngle233's avatar BlackAngle233
Browse files

11.10 update

parent b23a6173
Branches
No related merge requests found
Showing
with 1392 additions and 850 deletions
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1483626023200906509
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1483626023200906506}
- component: {fileID: 1483626023200906505}
- component: {fileID: 1483626023200906504}
- component: {fileID: 1483626023200906507}
m_Layer: 0
m_Name: Ellipse
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1483626023200906506
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1483626023200906509}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -1.053, y: 0, z: 0.944}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1483626023200906505
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1483626023200906509}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 094a6569e4454601b5928e64472d5228, type: 3}
m_Name:
m_EditorClassIdentifier:
lineStartClamp: 0.0001
lineEndClamp: 0.9999
customLineTransform: {fileID: 0}
loops: 1
transformMode: 0
rotationMode: 1
flipUpVector: 0
originOffset: {x: 0, y: 0, z: 0}
manualUpVectorBlend: 0
manualUpVectors:
- {x: 0, y: 1, z: 0}
- {x: 0, y: 1, z: 0}
- {x: 0, y: 1, z: 0}
velocitySearchRange: 0.02
distorters: []
distortionEnabled: 1
distortionMode: 0
distortionStrength:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
uniformDistortionStrength: 1
resolution: 36
radius: {x: 0.5, y: 0.25}
--- !u!120 &1483626023200906504
LineRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1483626023200906509}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 0
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_RayTracingMode: 0
m_RenderingLayerMask: 4294967295
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: ddc1013c5e7bc0841bf61884ea0f39cd, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 0
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Positions:
- {x: -0.5530001, y: -0.4128429, z: 1.587}
- {x: -0.5632943, y: -0.36253142, z: 1.587}
- {x: -0.593629, y: -0.3142853, z: 1.587}
- {x: -0.642763, y: -0.27007896, z: 1.587}
- {x: -0.7086855, y: -0.23172152, z: 1.587}
- {x: -0.78869855, y: -0.20078266, z: 1.587}
- {x: -0.8795279, y: -0.17852853, z: 1.587}
- {x: -0.97745633, y: -0.16586988, z: 1.587}
- {x: -1.0784763, y: -0.16332471, z: 1.587}
- {x: -1.1784538, y: -0.17099722, z: 1.587}
- {x: -1.2732971, y: -0.18857338, z: 1.587}
- {x: -1.3591251, y: -0.21533398, z: 1.587}
- {x: -1.4324253, y: -0.25018376, z: 1.587}
- {x: -1.4901979, y: -0.29169664, z: 1.587}
- {x: -1.5300786, y: -0.33817366, z: 1.587}
- {x: -1.5504357, y: -0.38771296, z: 1.587}
- {x: -1.5504357, y: -0.43828705, z: 1.587}
- {x: -1.5300786, y: -0.48782626, z: 1.587}
- {x: -1.4901979, y: -0.53430325, z: 1.587}
- {x: -1.4324253, y: -0.5758162, z: 1.587}
- {x: -1.3591251, y: -0.610666, z: 1.587}
- {x: -1.2732972, y: -0.63742656, z: 1.587}
- {x: -1.1784538, y: -0.6550027, z: 1.587}
- {x: -1.0784763, y: -0.66267526, z: 1.587}
- {x: -0.97745633, y: -0.6601301, z: 1.587}
- {x: -0.87952805, y: -0.6474715, z: 1.587}
- {x: -0.7886987, y: -0.6252173, z: 1.587}
- {x: -0.7086854, y: -0.5942784, z: 1.587}
- {x: -0.6427631, y: -0.555921, z: 1.587}
- {x: -0.59362906, y: -0.5117147, z: 1.587}
- {x: -0.5632943, y: -0.46346855, z: 1.587}
- {x: -0.5530001, y: -0.41315708, z: 1.587}
m_Parameters:
serializedVersion: 3
widthMultiplier: 0.18
widthCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
colorGradient:
serializedVersion: 2
key0: {r: 0.0047169924, g: 0.56144017, b: 1, a: 1}
key1: {r: 0.0047169924, g: 0.56144017, b: 1, a: 1}
key2: {r: 0, g: 0, b: 0, a: 0}
key3: {r: 0, g: 0, b: 0, a: 0}
key4: {r: 0, g: 0, b: 0, a: 0}
key5: {r: 0, g: 0, b: 0, a: 0}
key6: {r: 0, g: 0, b: 0, a: 0}
key7: {r: 0, g: 0, b: 0, a: 0}
ctime0: 0
ctime1: 65535
ctime2: 0
ctime3: 0
ctime4: 0
ctime5: 0
ctime6: 0
ctime7: 0
atime0: 0
atime1: 65535
atime2: 0
atime3: 0
atime4: 0
atime5: 0
atime6: 0
atime7: 0
m_Mode: 0
m_NumColorKeys: 2
m_NumAlphaKeys: 2
numCornerVertices: 8
numCapVertices: 8
alignment: 0
textureMode: 0
shadowBias: 0
generateLightingData: 0
m_UseWorldSpace: 1
m_Loop: 1
--- !u!114 &1483626023200906507
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1483626023200906509}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 1287d4d138a242f794bcfc01354d3ae2, type: 3}
m_Name:
m_EditorClassIdentifier:
lineDataSource: {fileID: 1483626023200906505}
lineColor:
serializedVersion: 2
key0: {r: 0.0047169924, g: 0.56144017, b: 1, a: 1}
key1: {r: 0.0047169924, g: 0.56144017, b: 1, a: 1}
key2: {r: 0, g: 0, b: 0, a: 0}
key3: {r: 0, g: 0, b: 0, a: 0}
key4: {r: 0, g: 0, b: 0, a: 0}
key5: {r: 0, g: 0, b: 0, a: 0}
key6: {r: 0, g: 0, b: 0, a: 0}
key7: {r: 0, g: 0, b: 0, a: 0}
ctime0: 0
ctime1: 65535
ctime2: 0
ctime3: 0
ctime4: 0
ctime5: 0
ctime6: 0
ctime7: 0
atime0: 0
atime1: 65535
atime2: 0
atime3: 0
atime4: 0
atime5: 0
atime6: 0
atime7: 0
m_Mode: 0
m_NumColorKeys: 2
m_NumAlphaKeys: 2
lineWidth:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
widthMultiplier: 0.18
colorOffset: 0
widthOffset: 0
stepMode: 0
lineStepCount: 32
pointDistributionMode: 1
customPointDistributionLength: 0.1
customPointDistributionCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 1
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 1
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
lineMaterial: {fileID: 2100000, guid: ddc1013c5e7bc0841bf61884ea0f39cd, type: 2}
roundedEdges: 1
roundedCaps: 1
fadeLineBrightnessOnEnable: 1
fadeLinePercentage: 0.55
fadeLineAnimationTime: 0.65
lineRenderer: {fileID: 1483626023200906504}
tileMaterialByWorldLength: 0
tileMaterialScale: 1
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &7066675710225985741
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7066675710225985728}
- component: {fileID: 7066675710225985731}
- component: {fileID: 7066675710225985730}
- component: {fileID: 7066675710225985729}
m_Layer: 0
m_Name: GameObject
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7066675710225985728
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7066675710225985741}
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_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!23 &7066675710225985731
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7066675710225985741}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!33 &7066675710225985730
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7066675710225985741}
m_Mesh: {fileID: 0}
--- !u!114 &7066675710225985729
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7066675710225985741}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c6bf611f908edb54cb58db1ada6b1124, type: 3}
m_Name:
m_EditorClassIdentifier:
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3367021541490072152
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3367021541490072102}
- component: {fileID: 3367021541490072153}
- component: {fileID: 3367021541490072100}
- component: {fileID: 3367021541490072103}
m_Layer: 0
m_Name: Spline
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3367021541490072102
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3367021541490072152}
m_LocalRotation: {x: 0, y: 1, z: 0, w: 0}
m_LocalPosition: {x: -2, y: 0, z: 0.965}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0}
--- !u!114 &3367021541490072153
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3367021541490072152}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4196b75e9e3b4d0c95239473ccc333b8, type: 3}
m_Name:
m_EditorClassIdentifier:
lineStartClamp: 0.0001
lineEndClamp: 0.9999
customLineTransform: {fileID: 0}
loops: 0
transformMode: 0
rotationMode: 1
flipUpVector: 0
originOffset: {x: 0, y: 0, z: 0}
manualUpVectorBlend: 0
manualUpVectors:
- {x: 0, y: 1, z: 0}
- {x: 0, y: 1, z: 0}
velocitySearchRange: 0.02
distorters: []
distortionEnabled: 1
distortionMode: 0
distortionStrength:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
uniformDistortionStrength: 1
controlPoints:
- position: {x: 0, y: 0, z: 0}
rotation: {x: 0, y: 0, z: 0, w: 1}
- position: {x: 0.5928917, y: 0.0418154, z: 0.0034427047}
rotation: {x: 0, y: 0, z: 0, w: 1}
- position: {x: 0.47503617, y: 0.3083095, z: 0.5011646}
rotation: {x: 0, y: 0, z: 0, w: 1}
- position: {x: 0, y: 0.5, z: 0.5}
rotation: {x: 0, y: 0, z: 0, w: 1}
- position: {x: -0.44839406, y: 0.6809397, z: 0.49890068}
rotation: {x: 0, y: 0, z: 0, w: 1}
- position: {x: -0.49537897, y: 0.78584373, z: 0.007106304}
rotation: {x: 0, y: 0, z: 0, w: 1}
- position: {x: 0, y: 1, z: 0}
rotation: {x: 0, y: 0, z: 0, w: 1}
alignAllControlPoints: 1
--- !u!120 &3367021541490072100
LineRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3367021541490072152}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 0
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_RayTracingMode: 0
m_RenderingLayerMask: 4294967295
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: ddc1013c5e7bc0841bf61884ea0f39cd, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 0
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Positions:
- {x: -2.0003557, y: -0.41297486, z: 1.6079979}
- {x: -2.106255, y: -0.40214247, z: 1.6013929}
- {x: -2.1949825, y: -0.38618496, z: 1.5840528}
- {x: -2.2671075, y: -0.36558452, z: 1.5575771}
- {x: -2.323199, y: -0.34082347, z: 1.5235649}
- {x: -2.3638265, y: -0.31238395, z: 1.4836156}
- {x: -2.3895595, y: -0.2807483, z: 1.4393282}
- {x: -2.400967, y: -0.24639878, z: 1.3923023}
- {x: -2.3986185, y: -0.20981754, z: 1.3441367}
- {x: -2.3830833, y: -0.17148685, z: 1.2964311}
- {x: -2.3549309, y: -0.13188899, z: 1.2507844}
- {x: -2.3147306, y: -0.09150618, z: 1.208796}
- {x: -2.2630515, y: -0.05082071, z: 1.1720653}
- {x: -2.200463, y: -0.010314673, z: 1.1421912}
- {x: -2.1275346, y: 0.029529482, z: 1.1207733}
- {x: -2.0448356, y: 0.068229645, z: 1.1094108}
- {x: -1.9578731, y: 0.10427576, z: 1.1096048}
- {x: -1.8812482, y: 0.13755274, z: 1.1212165}
- {x: -1.8149846, y: 0.16937917, z: 1.1427219}
- {x: -1.7593092, y: 0.2000534, z: 1.1725506}
- {x: -1.7144489, y: 0.2298736, z: 1.2091317}
- {x: -1.6806309, y: 0.25913835, z: 1.2508949}
- {x: -1.6580819, y: 0.2881459, z: 1.2962692}
- {x: -1.6470289, y: 0.31719482, z: 1.3436844}
- {x: -1.6476992, y: 0.34658313, z: 1.3915696}
- {x: -1.6603196, y: 0.37660939, z: 1.4383541}
- {x: -1.6851168, y: 0.4075719, z: 1.4824675}
- {x: -1.7223182, y: 0.4397692, z: 1.5223393}
- {x: -1.7721504, y: 0.47349942, z: 1.5563985}
- {x: -1.8348407, y: 0.5090609, z: 1.5830748}
- {x: -1.9106157, y: 0.54675215, z: 1.6007974}
- {x: -1.9997029, y: 0.58687156, z: 1.6079956}
m_Parameters:
serializedVersion: 3
widthMultiplier: 0.42
widthCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 2.1987011
outSlope: 2.1987011
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0.16707118
- serializedVersion: 3
time: 1
value: 0.006248474
inSlope: -1.8448529
outSlope: -1.8448529
tangentMode: 0
weightedMode: 0
inWeight: 0.18141192
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
colorGradient:
serializedVersion: 2
key0: {r: 0.6292379, g: 0.37166253, b: 0.9056604, a: 1}
key1: {r: 1, g: 0, b: 0, a: 1}
key2: {r: 0, g: 0, b: 0, a: 0}
key3: {r: 0, g: 0, b: 0, a: 0}
key4: {r: 0, g: 0, b: 0, a: 0}
key5: {r: 0, g: 0, b: 0, a: 0}
key6: {r: 0, g: 0, b: 0, a: 0}
key7: {r: 0, g: 0, b: 0, a: 0}
ctime0: 0
ctime1: 65535
ctime2: 0
ctime3: 0
ctime4: 0
ctime5: 0
ctime6: 0
ctime7: 0
atime0: 0
atime1: 65535
atime2: 0
atime3: 0
atime4: 0
atime5: 0
atime6: 0
atime7: 0
m_Mode: 0
m_NumColorKeys: 2
m_NumAlphaKeys: 2
numCornerVertices: 8
numCapVertices: 8
alignment: 0
textureMode: 0
shadowBias: 0
generateLightingData: 0
m_UseWorldSpace: 1
m_Loop: 0
--- !u!114 &3367021541490072103
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3367021541490072152}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 1287d4d138a242f794bcfc01354d3ae2, type: 3}
m_Name:
m_EditorClassIdentifier:
lineDataSource: {fileID: 3367021541490072153}
lineColor:
serializedVersion: 2
key0: {r: 0.6292379, g: 0.37166253, b: 0.9056604, a: 1}
key1: {r: 1, g: 0, b: 0, a: 1}
key2: {r: 0, g: 0, b: 0, a: 0}
key3: {r: 0, g: 0, b: 0, a: 0}
key4: {r: 0, g: 0, b: 0, a: 0}
key5: {r: 0, g: 0, b: 0, a: 0}
key6: {r: 0, g: 0, b: 0, a: 0}
key7: {r: 0, g: 0, b: 0, a: 0}
ctime0: 0
ctime1: 65535
ctime2: 0
ctime3: 0
ctime4: 0
ctime5: 0
ctime6: 0
ctime7: 0
atime0: 0
atime1: 65535
atime2: 0
atime3: 0
atime4: 0
atime5: 0
atime6: 0
atime7: 0
m_Mode: 0
m_NumColorKeys: 2
m_NumAlphaKeys: 2
lineWidth:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 2.1987011
outSlope: 2.1987011
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0.16707118
- serializedVersion: 3
time: 1
value: 0.006248474
inSlope: -1.8448529
outSlope: -1.8448529
tangentMode: 0
weightedMode: 0
inWeight: 0.18141192
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
widthMultiplier: 0.42
colorOffset: 0
widthOffset: 0
stepMode: 0
lineStepCount: 32
pointDistributionMode: 1
customPointDistributionLength: 0.1
customPointDistributionCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 1
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 1
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
lineMaterial: {fileID: 2100000, guid: ddc1013c5e7bc0841bf61884ea0f39cd, type: 2}
roundedEdges: 1
roundedCaps: 1
fadeLineBrightnessOnEnable: 1
fadeLinePercentage: 0.55
fadeLineAnimationTime: 0.65
lineRenderer: {fileID: 3367021541490072100}
tileMaterialByWorldLength: 0
tileMaterialScale: 1
...@@ -121,6 +121,103 @@ NavMeshSettings: ...@@ -121,6 +121,103 @@ NavMeshSettings:
debug: debug:
m_Flags: 0 m_Flags: 0
m_NavMeshData: {fileID: 0} m_NavMeshData: {fileID: 0}
--- !u!1 &384968185
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 384968189}
- component: {fileID: 384968188}
- component: {fileID: 384968187}
- component: {fileID: 384968186}
m_Layer: 0
m_Name: GameObject
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &384968186
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 384968185}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a6c90b73b6862d24b9b9bd76ad26b47b, type: 3}
m_Name:
m_EditorClassIdentifier:
formula: x + y
minX: -1
maxX: 1
minY: -1
maxY: 1
--- !u!33 &384968187
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 384968185}
m_Mesh: {fileID: 4300018, guid: a37785fa4a4129246a58f79132a1b6c6, type: 3}
--- !u!23 &384968188
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 384968185}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!4 &384968189
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 384968185}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 9.43}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &595124460 --- !u!1 &595124460
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
...@@ -431,77 +528,3 @@ Transform: ...@@ -431,77 +528,3 @@ Transform:
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 1 m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &1782433715
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_RootOrder
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985728, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7066675710225985730, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_Mesh
value:
objectReference: {fileID: 4300018, guid: a37785fa4a4129246a58f79132a1b6c6, type: 3}
- target: {fileID: 7066675710225985741, guid: 6de4f243439a6ea4597b0d1d34e14ef9,
type: 3}
propertyPath: m_Name
value: GameObject
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 6de4f243439a6ea4597b0d1d34e14ef9, type: 3}
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Calculator2D
{
public static float x;
public float getNum(string s, ref int index)
{
bool end = false;
string num = "";
while(!end && index < s.Length)
{
if ((s[index] >= '0' && s[index] <= '9') || s[index] == '.')
{
num += s[index];
index++;
}
else
break;
}
index--;
return float.Parse(num);
}
//'('-0, '+-'-1,'*/'-2,'sct^l'-3
private bool calculateStack(int prior, ref Stack<float> numstack, ref Stack<char> opstack)
{
while(opstack.Count > 0)
{
char operater = opstack.Peek();
float num1;
float num2;
switch (operater)
{
case '+':
if (prior == 1 || prior == 2)
return true;
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
num2 = numstack.Peek();
numstack.Pop();
numstack.Push(num2 + num1);
break;
case '-':
if (prior == 1 || prior == 2)
return true;
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
num2 = numstack.Peek();
numstack.Pop();
numstack.Push(num2 - num1);
break;
case '*':
if (prior == 2)
return true;
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
num2 = numstack.Peek();
numstack.Pop();
numstack.Push(num2 * num1);
break;
case '/':
if (prior == 2)
return true;
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
if (num1 == 0)
return false;
num2 = numstack.Peek();
numstack.Pop();
numstack.Push(num2 / num1);
break;
case '(':
if(prior == 0)
opstack.Pop();
return true;
case 's':
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
numstack.Push(Mathf.Sin(num1));
break;
case 'c':
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
numstack.Push(Mathf.Cos(num1));
break;
case 't':
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
numstack.Push(Mathf.Tan(num1));
break;
case '^':
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
num2 = numstack.Peek();
numstack.Pop();
numstack.Push(Mathf.Pow(num2, num1));
break;
case 'l':
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
if(num1 <= 0)
return false;
num2 = numstack.Peek();
numstack.Pop();
if(num2 <=0 || num2 == 1)
return false;
numstack.Push(Mathf.Log(num1, num2));
break;
default:
break;
}
}
return true;
}
public bool calculate2D(string s, float xIn, out float yOut)
{
x = xIn;
yOut = 0;
Stack<char> opstack = new Stack<char>();
Stack<float> numstack = new Stack<float>();
int length = s.Length;
int index;
char peek;
for (index = 0; index < length; ++index)
{
if(s[index] == '+' || s[index] == '-')
{
if(index == 0)
{
s = "0" + s;
length++;
}
else
{
if(s[index - 1] == '(')
{
s.Insert(index - 1, "0");
length++;
}
}
}
}
index = 0;
while (index < length)
{
Debug.Log(s[index]);
switch (s[index])
{
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
numstack.Push(getNum(s, ref index));
break;
case 'x':
numstack.Push(x);
break;
case '(':
opstack.Push('(');
break;
case ')':
if(!calculateStack(0, ref numstack, ref opstack))
return false;
break;
case '+':
if(opstack.Count != 0)
{
peek = opstack.Peek();
if (peek != '+' && peek != '-')
{
if (!calculateStack(1, ref numstack, ref opstack))
return false;
}
}
opstack.Push('+');
break;
case '-':
if (opstack.Count != 0)
{
peek = opstack.Peek();
if (peek != '+' && peek != '-')
{
if (!calculateStack(1, ref numstack, ref opstack))
return false;
}
}
opstack.Push('-');
break;
case '*':
if (opstack.Count != 0)
{
peek = opstack.Peek();
if (peek != '+' && peek != '-' && peek != '*' && peek != '/')
{
if (!calculateStack(2, ref numstack, ref opstack))
return false;
}
}
opstack.Push('*');
break;
case '/':
if (opstack.Count != 0)
{
peek = opstack.Peek();
if (peek != '+' && peek != '-' && peek != '*' && peek != '/')
{
if (!calculateStack(2, ref numstack, ref opstack))
return false;
}
}
opstack.Push('/');
break;
case 's':
if (s[index + 1] == 'i' && s[index + 2] == 'n' && s[index + 3] == '(')
{
opstack.Push('s');
opstack.Push('(');
index += 3;
}
break;
case 'c':
if (s[index + 1] == 'o' && s[index + 2] == 's' && s[index + 3] == '(')
{
opstack.Push('c');
opstack.Push('(');
index += 3;
}
break;
case 't':
if (s[index + 1] == 'a' && s[index + 2] == 'n' && s[index + 3] == '(')
{
opstack.Push('t');
opstack.Push('(');
index += 3;
}
break;
case '^':
opstack.Push('^');
break;
case 'l':
if (s[index + 1] == 'o' && s[index + 2] == 'g' && s[index + 3] == '(')
{
opstack.Push('l');
opstack.Push('(');
index += 3;
}
break;
default:
break;
}
index++;
}
while(opstack.Count > 0)
{
calculateStack(3, ref numstack, ref opstack);
}
yOut = numstack.Peek();
return true;
}
}
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Calculator3D
{
public static float x;
public static float y;
public float getNum(string s, ref int index)
{
bool end = false;
string num = "";
while (!end && index < s.Length)
{
if ((s[index] >= '0' && s[index] <= '9') || s[index] == '.')
{
num += s[index];
index++;
}
else
break;
}
index--;
return float.Parse(num);
}
//'('-0, '+-'-1,'*/'-2,'sct^l'-3
private bool calculateStack(int prior, ref Stack<float> numstack, ref Stack<char> opstack)
{
while (opstack.Count > 0)
{
char operater = opstack.Peek();
float num1;
float num2;
switch (operater)
{
case '+':
if (prior == 1 || prior == 2)
return true;
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
num2 = numstack.Peek();
numstack.Pop();
numstack.Push(num2 + num1);
break;
case '-':
if (prior == 1 || prior == 2)
return true;
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
num2 = numstack.Peek();
numstack.Pop();
numstack.Push(num2 - num1);
break;
case '*':
if (prior == 2)
return true;
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
num2 = numstack.Peek();
numstack.Pop();
numstack.Push(num2 * num1);
break;
case '/':
if (prior == 2)
return true;
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
if (num1 == 0)
return false;
num2 = numstack.Peek();
numstack.Pop();
numstack.Push(num2 / num1);
break;
case '(':
if (prior == 0)
opstack.Pop();
return true;
case 's':
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
numstack.Push(Mathf.Sin(num1));
break;
case 'c':
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
numstack.Push(Mathf.Cos(num1));
break;
case 't':
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
numstack.Push(Mathf.Tan(num1));
break;
case '^':
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
num2 = numstack.Peek();
numstack.Pop();
numstack.Push(Mathf.Pow(num2, num1));
break;
case 'l':
opstack.Pop();
num1 = numstack.Peek();
numstack.Pop();
if (num1 <= 0)
return false;
num2 = numstack.Peek();
numstack.Pop();
if (num2 <= 0 || num2 == 1)
return false;
numstack.Push(Mathf.Log(num1, num2));
break;
default:
break;
}
}
return true;
}
public bool calculate3D(string s, float xIn, float yIn, out float zOut)
{
x = xIn;
y = yIn;
zOut = 0;
Stack<char> opstack = new Stack<char>();
Stack<float> numstack = new Stack<float>();
int length = s.Length;
int index;
char peek;
for (index = 0; index < length; ++index)
{
if (s[index] == '+' || s[index] == '-')
{
if (index == 0)
{
s = "0" + s;
length++;
}
else
{
if (s[index - 1] == '(')
{
s.Insert(index - 1, "0");
length++;
}
}
}
}
index = 0;
while (index < length)
{
switch (s[index])
{
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
numstack.Push(getNum(s, ref index));
break;
case 'x':
numstack.Push(x);
break;
case 'y':
numstack.Push(y);
break;
case '(':
opstack.Push('(');
break;
case ')':
if (!calculateStack(0, ref numstack, ref opstack))
return false;
break;
case '+':
if (opstack.Count != 0)
{
peek = opstack.Peek();
if (peek != '+' && peek != '-')
{
if (!calculateStack(1, ref numstack, ref opstack))
return false;
}
}
opstack.Push('+');
break;
case '-':
if (opstack.Count != 0)
{
peek = opstack.Peek();
if (peek != '+' && peek != '-')
{
if (!calculateStack(1, ref numstack, ref opstack))
return false;
}
}
opstack.Push('-');
break;
case '*':
if (opstack.Count != 0)
{
peek = opstack.Peek();
if (peek != '+' && peek != '-' && peek != '*' && peek != '/')
{
if (!calculateStack(2, ref numstack, ref opstack))
return false;
}
}
opstack.Push('*');
break;
case '/':
if (opstack.Count != 0)
{
peek = opstack.Peek();
if (peek != '+' && peek != '-' && peek != '*' && peek != '/')
{
if (!calculateStack(2, ref numstack, ref opstack))
return false;
}
}
opstack.Push('/');
break;
case 's':
if (s[index + 1] == 'i' && s[index + 2] == 'n' && s[index + 3] == '(')
{
opstack.Push('s');
opstack.Push('(');
index += 3;
}
break;
case 'c':
if (s[index + 1] == 'o' && s[index + 2] == 's' && s[index + 3] == '(')
{
opstack.Push('c');
opstack.Push('(');
index += 3;
}
break;
case 't':
if (s[index + 1] == 'a' && s[index + 2] == 'n' && s[index + 3] == '(')
{
opstack.Push('t');
opstack.Push('(');
index += 3;
}
break;
case '^':
opstack.Push('^');
break;
case 'l':
if (s[index + 1] == 'o' && s[index + 2] == 'g' && s[index + 3] == '(')
{
opstack.Push('l');
opstack.Push('(');
index += 3;
}
break;
default:
break;
}
index++;
}
while (opstack.Count > 0)
{
calculateStack(3, ref numstack, ref opstack);
}
zOut = numstack.Peek();
//Debug.Log(x.ToString() + "," + y.ToString() + "=" + zOut.ToString());
return true;
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Customized : MonoBehaviour
{
Mesh mesh;
Calculator2D calculator2D;
public string formula;
public int minX;
public int maxX;
// Start is called before the first frame update
void Start()
{
mesh = new Mesh
{
name = "Customized"
};
calculator2D = new Calculator2D();
}
// Update is called once per frame
void Update()
{
}
public void DrawCustomized()
{
mesh.Clear();
bool isContinue = false;
Vector3[] vectors = new Vector3[100 * (maxX - minX) + 1];
int[] triangle = new int[100 * (maxX - minX) * 2];
int k = 0;
float step = 0.01f;
for (float i = minX; i <= maxX + 0.01f; i += step)
{
float y = 0;
if(calculator2D.calculate2D(formula, i ,out y))
{
vectors[k] = new Vector3(i, y, 0);
if (isContinue)
{
triangle[2 * (k - 1)] = k - 1;
triangle[2 * (k - 1) + 1] = k;
}
else
{
triangle[2 * (k - 1)] = k;
triangle[2 * (k - 1) + 1] = k;
}
isContinue = true;
}
else
{
if (k != 0)
vectors[k] = vectors[k - 1];
else
vectors[k] = new Vector3(0, 0, -1000);
isContinue = false;
}
k++;
}
mesh.vertices = vectors;
mesh.SetIndices(triangle, MeshTopology.Lines, 0);
GetComponent<MeshFilter>().mesh = mesh;
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Ellipse : MonoBehaviour
{
Mesh mesh;
public Vector3 center;
public float a;
public float b;
// Start is called before the first frame update
void Start()
{
mesh = new Mesh
{
name = "Ellipse"
};
}
// Update is called once per frame
void Update()
{
}
public void DrawEllipse()
{
mesh.Clear();
Vector3[] vectors = new Vector3[200];
int k = 0;
float step = a / 50;
for (float i = -a; i <= a; i += step)
{
float y = 1 - i * i / (a * a);
y *= (b * b);
y = Mathf.Sqrt(y);
vectors[k] = new Vector3(i, y, 0);
if (y != 0)
{
vectors[200 - k] = new Vector3(i, -y, 0);
}
k++;
}
mesh.vertices = vectors;
int[] triangle = new int[400];
for (int i = 0; i < vectors.Length - 1; ++i)
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i + 1;
}
triangle[398] = 199;
triangle[399] = 0;
mesh.SetIndices(triangle, MeshTopology.Lines, 0);
GetComponent<MeshFilter>().mesh = mesh;
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Exponential : MonoBehaviour
{
Mesh mesh;
public int minX;
public int maxX;
public float factor;
public float c;
// Start is called before the first frame update
void Start()
{
mesh = new Mesh
{
name = "Exponential"
};
}
// Update is called once per frame
void Update()
{
}
public void DrawExponential()
{
mesh.Clear();
float step = 0.01f;
Vector3[] vectors = new Vector3[100 * (maxX - minX) + 1];
int k = 0;
for (float i = minX; i <= maxX; i = i + step)
{
float y = Mathf.Pow(c, i);
y *= factor;
vectors[k] = new Vector3(i, y, 0);
k++;
}
vectors[100 * (maxX - minX)] = new Vector3(maxX, Mathf.Pow(c, maxX) * factor, 0);
mesh.vertices = vectors;
int[] triangle = new int[100 * (maxX - minX) * 2];
for (int i = 0; i < vectors.Length - 1; ++i)
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i + 1;
}
mesh.SetIndices(triangle, MeshTopology.Lines, 0);
GetComponent<MeshFilter>().mesh = mesh;
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Hyperbola : MonoBehaviour
{
Mesh mesh;
public Vector3 center;
public float a;
public float b;
// Start is called before the first frame update
void Start()
{
mesh = new Mesh
{
name = "Hyperbola"
};
}
// Update is called once per frame
void Update()
{
}
public void DrawHyperbola()
{
mesh.Clear();
Vector3[] vectors = new Vector3[202];
int k = 0;
float step = a / 100;
float x = -a;
while (k < 51)
{
float y = x * x / (a * a) - 1;
y *= (b * b);
y = Mathf.Sqrt(y);
vectors[50 + k] = new Vector3(x, y, 0);
if (y != 0)
{
vectors[50 - k] = new Vector3(x, -y, 0);
}
x -= step;
step *= 1.1f;
k++;
}
x = a;
step = a / 100;
k = 0;
while (k < 51)
{
float y = x * x / (a * a) - 1;
y *= (b * b);
y = Mathf.Sqrt(y);
vectors[151 + k] = new Vector3(x, y, 0);
if (y != 0)
{
vectors[151 - k] = new Vector3(x, -y, 0);
}
x += step;
step *= 1.1f;
k++;
}
mesh.vertices = vectors;
int[] triangle = new int[400];
for (int i = 0; i < 100; ++i)
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i + 1;
}
for (int i = 100; i < 200; ++i)
{
triangle[2 * i] = i + 1;
triangle[2 * i + 1] = i + 2;
}
mesh.SetIndices(triangle, MeshTopology.Lines, 0);
GetComponent<MeshFilter>().mesh = mesh;
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class InverseTri : MonoBehaviour
{
Mesh mesh;
public int minX;
public int maxX;
public enum InverseTriTpye
{
Arcsin,
Arccos,
Arctan
}
public InverseTriTpye inverseTriTpye;
// Start is called before the first frame update
void Start()
{
mesh = new Mesh
{
name = "InverseTri"
};
}
// Update is called once per frame
void Update()
{
}
public void DrawInverseTri()
{
mesh.Clear();
if(inverseTriTpye != InverseTriTpye.Arctan)
{
float step = 0.01f;
Vector3[] vectors = new Vector3[100 * 2 + 1];
int k = 0;
for (float i = -1; i <= 1; i = i + step)
{
float y = i;
switch (inverseTriTpye)
{
case InverseTriTpye.Arcsin:
y = Mathf.Asin(y);
break;
case InverseTriTpye.Arccos:
y = Mathf.Acos(y);
break;
default:
break;
}
vectors[k] = new Vector3(i, y, 0);
k++;
}
switch (inverseTriTpye)
{
case InverseTriTpye.Arcsin:
vectors[100 * 2] = new Vector3(1, Mathf.Asin(1), 0);
break;
case InverseTriTpye.Arccos:
vectors[100 * 2] = new Vector3(1, Mathf.Acos(1), 0);
break;
default:
break;
}
mesh.vertices = vectors;
int[] triangle = new int[100 * 2 * 2];
for (int i = 0; i < vectors.Length - 1; ++i)
{
if (vectors[i].y * vectors[i + 1].y >= 0)
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i + 1;
}
else
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i;
}
}
mesh.SetIndices(triangle, MeshTopology.Lines, 0);
}
else
{
float step = 0.01f;
Vector3[] vectors = new Vector3[100 * (maxX - minX) + 1];
int k = 0;
for (float i = -1; i <= 1; i = i + step)
{
float y = i;
y = Mathf.Atan(y);
vectors[k] = new Vector3(i, y, 0);
k++;
}
vectors[100 * (maxX - minX)] = new Vector3(maxX, Mathf.Atan(maxX), 0);
mesh.vertices = vectors;
int[] triangle = new int[100 * (maxX - minX) * 2];
for (int i = 0; i < vectors.Length - 1; ++i)
{
if (vectors[i].y * vectors[i + 1].y >= 0)
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i + 1;
}
else
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i;
}
}
mesh.SetIndices(triangle, MeshTopology.Lines, 0);
}
GetComponent<MeshFilter>().mesh = mesh;
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Logarithmic : MonoBehaviour
{
Mesh mesh;
public int maxX;
public float factor;
public float a;
// Start is called before the first frame update
void Start()
{
mesh = new Mesh
{
name = "Logarithmic"
};
}
// Update is called once per frame
void Update()
{
}
public void DrawLogarithmic()
{
mesh.Clear();
float step = 0.01f;
Vector3[] vectors = new Vector3[100 * maxX];
int k = 0;
float down = Mathf.Log(a);
for (float i = step; i <= maxX; i = i + step)
{
float y = Mathf.Log(i) / down;
y *= factor;
vectors[k] = new Vector3(i, y, 0);
k++;
}
vectors[100 * maxX - 1] = new Vector3(maxX, Mathf.Log(maxX) / down * factor, 0);
mesh.vertices = vectors;
int[] triangle = new int[100 * maxX * 2 - 2];
for (int i = 0; i < vectors.Length - 1; ++i)
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i + 1;
}
mesh.SetIndices(triangle, MeshTopology.Lines, 0);
GetComponent<MeshFilter>().mesh = mesh;
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Spline : MonoBehaviour
{
Mesh mesh;
public int minX;
public int maxX;
public List<float> factors;
// Start is called before the first frame update
void Start()
{
mesh = new Mesh
{
name = "Spline"
};
factors = new List<float>();
factors.Add(1);
factors.Add(0);
factors.Add(1);
}
// Update is called once per frame
void Update()
{
}
public void DrawSpline()
{
mesh.Clear();
Vector3[] vectors = new Vector3[100 * (maxX - minX) + 1];
int k = 0;
float step = 0.01f;
for (float i = minX; i <= maxX; i+=step)
{
float y = 0;
for (int j = factors.Count - 1; j > 0; --j)
{
y += factors[j];
y *= i;
}
y += factors[0];
vectors[k] = new Vector3(i, y, 0);
k++;
}
mesh.vertices = vectors;
int[] triangle = new int[100 * (maxX - minX) * 2];
for (int i = 0; i < vectors.Length - 1; ++i)
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i + 1;
}
mesh.SetIndices(triangle, MeshTopology.Lines, 0);
GetComponent<MeshFilter>().mesh = mesh;
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ThreeD : MonoBehaviour
{
Mesh mesh;
Calculator3D calculator3D;
public string formula;
public int minX;
public int maxX;
public int minY;
public int maxY;
// Start is called before the first frame update
void Start()
{
mesh = new Mesh
{
name = "ThreeD"
};
calculator3D = new Calculator3D();
DrawCustomized();
}
// Update is called once per frame
public void DrawCustomized()
{
mesh.Clear();
Vector3[] vectors = new Vector3[(10 * (maxX - minX) + 1) * (10 * (maxY - minY) + 1)];
int[] triangle = new int[100 * (maxX - minX) * (maxY - minY) * 2 * 3];
int k = 0;
float step = 0.1f;
for(float i = minX; i <= maxX + 0.01f; i += step)
{
for(float j = minY; j <= maxY + 0.01f; j += step)
{
float z = 0;
if(calculator3D.calculate3D(formula, i, j, out z))
{
vectors[k] = new Vector3(i, j, z);
}
else
{
vectors[k] = vectors[k - 1];
}
++k;
}
}
int lineCount = 10 * (maxY - minY) + 1;
int line = 0;
for(int i = 0; i < lineCount - 1; ++i)
{
i *= lineCount;
for(int j = 0; j < lineCount - 1; ++j)
{
triangle[6 * (i + j - line)] = (i + j);
triangle[6 * (i + j - line) + 1] = (i + j) + 1;
triangle[6 * (i + j - line) + 2] = (i + j) + lineCount;
triangle[6 * (i + j - line) + 3] = (i + j) + 1; ;
triangle[6 * (i + j - line) + 4] = (i + j) + lineCount + 1;
triangle[6 * (i + j - line) + 5] = (i + j) + lineCount;
}
i /= lineCount;
line++;
}
mesh.vertices = vectors;
mesh.SetIndices(triangle, MeshTopology.Triangles, 0);
GetComponent<MeshFilter>().mesh = mesh;
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Trigonometric : MonoBehaviour
{
Mesh mesh;
public int minX;
public int maxX;
public TriType triType;
public float a;
public float b;
public float factor;
public enum TriType
{
Sin,
Cos,
Tan
}
// Start is called before the first frame update
void Start()
{
mesh = new Mesh
{
name = "Trigonometric"
};
}
// Update is called once per frame
void Update()
{
}
public void DrawTrigonometric()
{
mesh.Clear();
float step = 0.01f;
Vector3[] vectors = new Vector3[100 * (maxX - minX) + 1];
int k = 0;
for (float i = minX; i <= maxX; i = i + step)
{
float y = a * i + b;
switch (triType)
{
case TriType.Sin:
y = Mathf.Sin(y);
break;
case TriType.Cos:
y = Mathf.Cos(y);
break;
case TriType.Tan:
y = Mathf.Tan(y);
break;
default:
break;
}
y *= factor;
vectors[k] = new Vector3(i, y, 0);
k++;
}
switch (triType)
{
case TriType.Sin:
vectors[100 * (maxX - minX)] = new Vector3(maxX, Mathf.Sin(a * maxX + b) * factor, 0);
break;
case TriType.Cos:
vectors[100 * (maxX - minX)] = new Vector3(maxX, Mathf.Cos(a * maxX + b) * factor, 0);
break;
case TriType.Tan:
vectors[100 * (maxX - minX)] = new Vector3(maxX, Mathf.Tan(a * maxX + b) * factor, 0);
break;
default:
break;
}
mesh.vertices = vectors;
int[] triangle = new int[100 * (maxX - minX) * 2];
for (int i = 0; i < vectors.Length - 1; ++i)
{
if(vectors[i].y * vectors[i + 1].y >= 0)
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i + 1;
}
else
{
triangle[2 * i] = i;
triangle[2 * i + 1] = i;
}
}
mesh.SetIndices(triangle, MeshTopology.Lines, 0);
GetComponent<MeshFilter>().mesh = mesh;
}
}
...@@ -53,9 +53,8 @@ public class NormalFunctionTest : MonoBehaviour ...@@ -53,9 +53,8 @@ public class NormalFunctionTest : MonoBehaviour
//DrawHyperbola(new Vector3(0, 0, 0), 3, 2); //DrawHyperbola(new Vector3(0, 0, 0), 3, 2);
//DrawExponential(2, 3); //DrawExponential(2, 3);
//DrawLogarithmic(2, 3); //DrawLogarithmic(2, 3);
DrawTrigonometric(TriType.Sin, 1, 0, 1); //DrawTrigonometric(TriType.Sin, 1, 0, 1);
} }
// Update is called once per frame // Update is called once per frame
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
* 将 Windows 和 HoloLens2 连接在同一局域网下,可以在 HoloLens2 的设置中看到其 IP,直接在电脑上访问 * 将 Windows 和 HoloLens2 连接在同一局域网下,可以在 HoloLens2 的设置中看到其 IP,直接在电脑上访问
* 调试需要在 HoloLens2 上下载 Holographic Remoting Player 软件并打开,再在 Unity 中 ’Window’-‘XR’-‘Holographic Emulation’ 中输入其 IP 并尝试连接 * 调试需要在 HoloLens2 上下载 Holographic Remoting Player 软件并打开,再在 Unity 中 ’Window’-‘XR’-‘Holographic Emulation’ 中输入其 IP 并尝试连接
* 尝试多次后依旧连接不上...... * 尝试多次后依旧连接不上......
* 10.29:更新了 HoloLens2 的固件版本后,成功连接上
* 根据官方文档,需要下载并导入 MRTK.Tutorials.PCHolograhicRemoting 包,将 HolographicRemoting 预制体拖入场景中,再使用 unity build 后在 VS 中运行 * 根据官方文档,需要下载并导入 MRTK.Tutorials.PCHolograhicRemoting 包,将 HolographicRemoting 预制体拖入场景中,再使用 unity build 后在 VS 中运行
* VS 编译未通过,暂时未成功 * VS 编译未通过,暂时未成功
......
# 11.10
* 整理之前测试用的代码,将基本函数剥离到各自的脚本中
* 见 Functions -> Spline / Ellipse / Hyperbola / Exponential / Logarithmic / Trigonometric / InverseTri
* 增加了自定义函数绘制的支持,结合之前做的 Calculator 进行 Mesh 绘制并且通过测试
* 增加了三维自定义函数绘制的支持
* 目前只支持固定 X-Y 范围内的绘制,无法自定义复杂区间
* 增加了函数断点的判断,从而支持绘制不完全连续的函数
* 但是在三维函数情况中,情况更为复杂,因而还未做相应的处理
* 而且参考中学数学,三维函数似乎只会用在平面之上,不会出现复杂情况
# 11.3
## 10.29
* 与 Microsoft 支持进行联系,更新了 HoloLens2 的固件版本,解决了有时无法开机以及连接不上 Unity 的问题
* 在 HoloLens2 上尝试了 MRTK 中的实例场景:
* 对于物体的拖拽缩放,经常会出现由于手运动幅度太大导致离开识别范围,因而在设计时应该尽量避免大幅度的拖拽操作,保持物体在画面中心较好
* HoloLens2 对点击或是握拳选中的判定略有硬核,难以进行精确选择,因而物体交互的判定范围不能太小,尤其是选点之类的操作
* 相比之下,对于语音识别的精度就较高,可以考虑多加使用
## 10.30
* 参考之前学长做的 mathx 的 Hololens 版本(但是丢失了很多素材所以不能运行,只能看看脚本)
* 沿用其中的 calculator 的想法,使引擎支持自定义函数的绘制,同时依旧保留基础函数的绘制功能(考虑到之后还需要定制化例如对称轴,焦点等特殊信息的绘制)
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment