#21 Ready for canon shot and destroy object

This commit is contained in:
M1_IDMhan 2023-08-22 14:31:24 +09:00
parent 13cfeb3315
commit ea4320988c
611 changed files with 1575385 additions and 69 deletions

View File

@ -565,7 +565,7 @@ MonoBehaviour:
m_PivotOffset: {x: 0, y: 0, z: 0}
m_AmplitudeGain: 1
m_FrequencyGain: 1
mNoiseOffsets: {x: 0, y: 0, z: 0}
mNoiseOffsets: {x: 563.2293, y: -661.2322, z: 543.1609}
--- !u!114 &86707742
MonoBehaviour:
m_ObjectHideFlags: 3
@ -1245,7 +1245,7 @@ Transform:
m_Children:
- {fileID: 263106988}
m_Father: {fileID: 476261175}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 24.015, y: 0, z: 0.03}
--- !u!114 &168896974
MonoBehaviour:
m_ObjectHideFlags: 0
@ -1826,7 +1826,7 @@ MonoBehaviour:
m_PivotOffset: {x: 0, y: 0, z: 0}
m_AmplitudeGain: 1
m_FrequencyGain: 1
mNoiseOffsets: {x: 0, y: 0, z: 0}
mNoiseOffsets: {x: 905.71375, y: 689.6603, z: 525.3768}
--- !u!114 &263106990
MonoBehaviour:
m_ObjectHideFlags: 3
@ -1855,7 +1855,7 @@ MonoBehaviour:
m_Bias: 0
m_RecenterToTargetHeading:
m_enabled: 1
m_WaitTime: 1
m_WaitTime: 2
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
@ -1867,7 +1867,7 @@ MonoBehaviour:
m_DecelTime: 0.5
m_InputAxisName: Mouse X
m_InputAxisValue: 0
m_InvertInput: 1
m_InvertInput: 0
m_MinValue: -180
m_MaxValue: 180
m_Wrap: 1
@ -3648,6 +3648,81 @@ Transform:
type: 3}
m_PrefabInstance: {fileID: 1134388172}
m_PrefabAsset: {fileID: 0}
--- !u!1 &496180835
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 496180836}
- component: {fileID: 496180838}
- component: {fileID: 496180837}
m_Layer: 5
m_Name: Aim
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!224 &496180836
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 496180835}
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: 2105062291}
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: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &496180837
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 496180835}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 6333624b899704051b961af97738160d, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &496180838
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 496180835}
m_CullTransparentMesh: 1
--- !u!1 &519038850
GameObject:
m_ObjectHideFlags: 0
@ -3673,7 +3748,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 519038850}
serializedVersion: 2
m_LocalRotation: {x: 0.30631074, y: -0.6373176, z: 0.30631068, w: 0.6373177}
m_LocalRotation: {x: 0.30631077, y: -0.6373176, z: 0.3063107, w: 0.6373177}
m_LocalPosition: {x: 19.84, y: 27.853, z: -2.0700016}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@ -6363,6 +6438,85 @@ Transform:
- {fileID: 830411006}
m_Father: {fileID: 888439616}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &719550482
GameObject:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 719550483}
- component: {fileID: 719550484}
m_Layer: 0
m_Name: BottomRig
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &719550483
Transform:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 719550482}
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:
- {fileID: 759378634}
m_Father: {fileID: 1036440296}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &719550484
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 719550482}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 45e653bab7fb20e499bda25e1b646fea, type: 3}
m_Name:
m_EditorClassIdentifier:
m_ExcludedPropertiesInInspector:
- m_Script
- Header
- Extensions
- m_Priority
- m_Transitions
- m_Follow
- m_StandbyUpdate
- m_Lens
m_LockStageInInspector: 00000000
m_StreamingVersion: 20170927
m_Priority: 10
m_StandbyUpdate: 2
m_LookAt: {fileID: 0}
m_Follow: {fileID: 0}
m_Lens:
FieldOfView: 40
OrthographicSize: 10
NearClipPlane: 0.1
FarClipPlane: 5000
Dutch: 0
ModeOverride: 0
LensShift: {x: 0, y: 0}
GateFit: 2
FocusDistance: 10
m_SensorSize: {x: 1, y: 1}
m_Transitions:
m_BlendHint: 0
m_InheritPosition: 0
m_OnCameraLive:
m_PersistentCalls:
m_Calls: []
m_LegacyBlendHint: 0
m_ComponentOwner: {fileID: 759378634}
--- !u!1 &729135456 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 6030931212828352948, guid: 410908daff8b945d8b8c446cb753408b,
@ -6780,6 +6934,133 @@ Transform:
type: 3}
m_PrefabInstance: {fileID: 409023815}
m_PrefabAsset: {fileID: 0}
--- !u!1 &759378633
GameObject:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 759378634}
- component: {fileID: 759378637}
- component: {fileID: 759378636}
- component: {fileID: 759378635}
m_Layer: 0
m_Name: cm
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &759378634
Transform:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 759378633}
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: 719550483}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &759378635
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 759378633}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4044717213e31446939f7bd49c896ea, type: 3}
m_Name:
m_EditorClassIdentifier:
m_TrackedObjectOffset: {x: 0, y: 0, z: 0}
m_LookaheadTime: 0
m_LookaheadSmoothing: 0
m_LookaheadIgnoreY: 0
m_HorizontalDamping: 0
m_VerticalDamping: 0
m_ScreenX: 0.5
m_ScreenY: 0.6
m_DeadZoneWidth: 0
m_DeadZoneHeight: 0
m_SoftZoneWidth: 0.8
m_SoftZoneHeight: 0.8
m_BiasX: 0
m_BiasY: 0
m_CenterOnActivate: 1
--- !u!114 &759378636
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 759378633}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9384ab8608cdc3d479fe89cd51eed48f, type: 3}
m_Name:
m_EditorClassIdentifier:
m_BindingMode: 4
m_FollowOffset: {x: 0, y: 2.5, z: -3}
m_XDamping: 1
m_YDamping: 1
m_ZDamping: 1
m_AngularDampingMode: 0
m_PitchDamping: 0
m_YawDamping: 0
m_RollDamping: 0
m_AngularDamping: 0
m_Heading:
m_Definition: 2
m_VelocityFilterStrength: 4
m_Bias: 0
m_RecenterToTargetHeading:
m_enabled: 0
m_WaitTime: 1
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
m_XAxis:
Value: 0
m_SpeedMode: 0
m_MaxSpeed: 300
m_AccelTime: 0.1
m_DecelTime: 0.1
m_InputAxisName:
m_InputAxisValue: 0
m_InvertInput: 1
m_MinValue: -180
m_MaxValue: 180
m_Wrap: 1
m_Recentering:
m_enabled: 0
m_WaitTime: 1
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
m_LegacyRadius: 3.4028235e+38
m_LegacyHeightOffset: 3.4028235e+38
m_LegacyHeadingBias: 3.4028235e+38
m_HeadingIsSlave: 1
--- !u!114 &759378637
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 759378633}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &769581785
PrefabInstance:
m_ObjectHideFlags: 0
@ -7064,8 +7345,12 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
dredgeCam: {fileID: 168896974}
rotateSpeed: 200
assaultCam: {fileID: 1871370247}
InShipCam: {fileID: 519038852}
takeAimCam: {fileID: 1036440297}
sensitivity: 0.5
heightLimits: {x: 2, y: 50}
--- !u!1001 &785770880
PrefabInstance:
m_ObjectHideFlags: 0
@ -8415,6 +8700,146 @@ Transform:
type: 3}
m_PrefabInstance: {fileID: 1651115743}
m_PrefabAsset: {fileID: 0}
--- !u!1 &1036440295
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1036440296}
- component: {fileID: 1036440297}
m_Layer: 0
m_Name: TakeAimCam
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1036440296
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1036440295}
serializedVersion: 2
m_LocalRotation: {x: 0.10037751, y: 0.699946, z: -0.10037751, w: 0.699946}
m_LocalPosition: {x: -37.3, y: 2.68, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1299379571}
- {fileID: 1208059832}
- {fileID: 719550483}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 16.322, y: 90, z: 0}
--- !u!114 &1036440297
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1036440295}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 319d2fe34a804e245819465c9505ea59, type: 3}
m_Name:
m_EditorClassIdentifier:
m_ExcludedPropertiesInInspector:
- m_Script
m_LockStageInInspector:
m_StreamingVersion: 20170927
m_Priority: 0
m_StandbyUpdate: 2
m_LookAt: {fileID: 0}
m_Follow: {fileID: 0}
m_CommonLens: 1
m_Lens:
FieldOfView: 40
OrthographicSize: 10
NearClipPlane: 0.1
FarClipPlane: 5000
Dutch: 0
ModeOverride: 0
LensShift: {x: 0, y: 0}
GateFit: 2
FocusDistance: 10
m_SensorSize: {x: 1, y: 1}
m_Transitions:
m_BlendHint: 0
m_InheritPosition: 0
m_OnCameraLive:
m_PersistentCalls:
m_Calls: []
m_LegacyBlendHint: 0
m_YAxis:
Value: 0.5
m_SpeedMode: 0
m_MaxSpeed: 2
m_AccelTime: 0.2
m_DecelTime: 0.1
m_InputAxisName: Mouse Y
m_InputAxisValue: 0
m_InvertInput: 0
m_MinValue: 0
m_MaxValue: 1
m_Wrap: 0
m_Recentering:
m_enabled: 0
m_WaitTime: 1
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
m_YAxisRecentering:
m_enabled: 0
m_WaitTime: 1
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
m_XAxis:
Value: 0
m_SpeedMode: 0
m_MaxSpeed: 300
m_AccelTime: 0.1
m_DecelTime: 0.1
m_InputAxisName: Mouse X
m_InputAxisValue: 0
m_InvertInput: 1
m_MinValue: -180
m_MaxValue: 180
m_Wrap: 1
m_Recentering:
m_enabled: 0
m_WaitTime: 1
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
m_Heading:
m_Definition: 2
m_VelocityFilterStrength: 4
m_Bias: 0
m_RecenterToTargetHeading:
m_enabled: 0
m_WaitTime: 1
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
m_BindingMode: 4
m_SplineCurvature: 0.2
m_Orbits:
- m_Height: 4.5
m_Radius: 1.75
- m_Height: 2.5
m_Radius: 3
- m_Height: 0.4
m_Radius: 1.3
m_LegacyHeadingBias: 3.4028235e+38
m_Rigs:
- {fileID: 1299379572}
- {fileID: 1208059833}
- {fileID: 719550484}
--- !u!4 &1037063016 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 489124, guid: a70152ac9ec4ea14e94da160b98b6fad,
@ -9488,6 +9913,212 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 769b4ba8d88ef40e2abd78a4282a6951, type: 3}
--- !u!1 &1196876369
GameObject:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1196876370}
- component: {fileID: 1196876373}
- component: {fileID: 1196876372}
- component: {fileID: 1196876371}
m_Layer: 0
m_Name: cm
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1196876370
Transform:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1196876369}
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: 1208059832}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1196876371
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1196876369}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4044717213e31446939f7bd49c896ea, type: 3}
m_Name:
m_EditorClassIdentifier:
m_TrackedObjectOffset: {x: 0, y: 0, z: 0}
m_LookaheadTime: 0
m_LookaheadSmoothing: 0
m_LookaheadIgnoreY: 0
m_HorizontalDamping: 0
m_VerticalDamping: 0
m_ScreenX: 0.5
m_ScreenY: 0.55
m_DeadZoneWidth: 0
m_DeadZoneHeight: 0
m_SoftZoneWidth: 0.8
m_SoftZoneHeight: 0.8
m_BiasX: 0
m_BiasY: 0
m_CenterOnActivate: 1
--- !u!114 &1196876372
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1196876369}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9384ab8608cdc3d479fe89cd51eed48f, type: 3}
m_Name:
m_EditorClassIdentifier:
m_BindingMode: 4
m_FollowOffset: {x: 0, y: 2.5, z: -3}
m_XDamping: 1
m_YDamping: 1
m_ZDamping: 1
m_AngularDampingMode: 0
m_PitchDamping: 0
m_YawDamping: 0
m_RollDamping: 0
m_AngularDamping: 0
m_Heading:
m_Definition: 2
m_VelocityFilterStrength: 4
m_Bias: 0
m_RecenterToTargetHeading:
m_enabled: 0
m_WaitTime: 1
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
m_XAxis:
Value: 0
m_SpeedMode: 0
m_MaxSpeed: 300
m_AccelTime: 0.1
m_DecelTime: 0.1
m_InputAxisName:
m_InputAxisValue: 0
m_InvertInput: 1
m_MinValue: -180
m_MaxValue: 180
m_Wrap: 1
m_Recentering:
m_enabled: 0
m_WaitTime: 1
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
m_LegacyRadius: 3.4028235e+38
m_LegacyHeightOffset: 3.4028235e+38
m_LegacyHeadingBias: 3.4028235e+38
m_HeadingIsSlave: 1
--- !u!114 &1196876373
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1196876369}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1208059831
GameObject:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1208059832}
- component: {fileID: 1208059833}
m_Layer: 0
m_Name: MiddleRig
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1208059832
Transform:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1208059831}
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:
- {fileID: 1196876370}
m_Father: {fileID: 1036440296}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1208059833
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1208059831}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 45e653bab7fb20e499bda25e1b646fea, type: 3}
m_Name:
m_EditorClassIdentifier:
m_ExcludedPropertiesInInspector:
- m_Script
- Header
- Extensions
- m_Priority
- m_Transitions
- m_Follow
- m_StandbyUpdate
- m_Lens
m_LockStageInInspector: 00000000
m_StreamingVersion: 20170927
m_Priority: 10
m_StandbyUpdate: 2
m_LookAt: {fileID: 0}
m_Follow: {fileID: 0}
m_Lens:
FieldOfView: 40
OrthographicSize: 10
NearClipPlane: 0.1
FarClipPlane: 5000
Dutch: 0
ModeOverride: 0
LensShift: {x: 0, y: 0}
GateFit: 2
FocusDistance: 10
m_SensorSize: {x: 1, y: 1}
m_Transitions:
m_BlendHint: 0
m_InheritPosition: 0
m_OnCameraLive:
m_PersistentCalls:
m_Calls: []
m_LegacyBlendHint: 0
m_ComponentOwner: {fileID: 1196876370}
--- !u!1001 &1229083196
PrefabInstance:
m_ObjectHideFlags: 0
@ -9894,6 +10525,85 @@ Transform:
type: 3}
m_PrefabInstance: {fileID: 1299073856}
m_PrefabAsset: {fileID: 0}
--- !u!1 &1299379570
GameObject:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1299379571}
- component: {fileID: 1299379572}
m_Layer: 0
m_Name: TopRig
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1299379571
Transform:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1299379570}
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:
- {fileID: 2086678789}
m_Father: {fileID: 1036440296}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1299379572
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1299379570}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 45e653bab7fb20e499bda25e1b646fea, type: 3}
m_Name:
m_EditorClassIdentifier:
m_ExcludedPropertiesInInspector:
- m_Script
- Header
- Extensions
- m_Priority
- m_Transitions
- m_Follow
- m_StandbyUpdate
- m_Lens
m_LockStageInInspector: 00000000
m_StreamingVersion: 20170927
m_Priority: 10
m_StandbyUpdate: 2
m_LookAt: {fileID: 0}
m_Follow: {fileID: 0}
m_Lens:
FieldOfView: 40
OrthographicSize: 10
NearClipPlane: 0.1
FarClipPlane: 5000
Dutch: 0
ModeOverride: 0
LensShift: {x: 0, y: 0}
GateFit: 2
FocusDistance: 10
m_SensorSize: {x: 1, y: 1}
m_Transitions:
m_BlendHint: 0
m_InheritPosition: 0
m_OnCameraLive:
m_PersistentCalls:
m_Calls: []
m_LegacyBlendHint: 0
m_ComponentOwner: {fileID: 2086678789}
--- !u!4 &1302515238 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 412716, guid: e1c4cc5b9a7d0d7479734ea4167d417e,
@ -10442,7 +11152,7 @@ MonoBehaviour:
m_PivotOffset: {x: 0, y: 0, z: 0}
m_AmplitudeGain: 0.5
m_FrequencyGain: 0.5
mNoiseOffsets: {x: 0, y: 0, z: 0}
mNoiseOffsets: {x: -78.63489, y: -26.88684, z: 342.8473}
--- !u!114 &1385621424
MonoBehaviour:
m_ObjectHideFlags: 3
@ -13459,7 +14169,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1871370245}
serializedVersion: 2
m_LocalRotation: {x: 0.67640686, y: -0.000000029802319, z: -0, w: 0.7365282}
m_LocalRotation: {x: 0.6764068, y: -0, z: -0, w: 0.7365283}
m_LocalPosition: {x: -0.0000002384187, y: 120, z: -10.000001}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@ -14679,6 +15389,133 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 0f7ff4b7b8d5e4f09ac4fc513061cd59, type: 3}
--- !u!1 &2086678788
GameObject:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2086678789}
- component: {fileID: 2086678792}
- component: {fileID: 2086678791}
- component: {fileID: 2086678790}
m_Layer: 0
m_Name: cm
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2086678789
Transform:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2086678788}
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: 1299379571}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &2086678790
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2086678788}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4044717213e31446939f7bd49c896ea, type: 3}
m_Name:
m_EditorClassIdentifier:
m_TrackedObjectOffset: {x: 0, y: 0, z: 0}
m_LookaheadTime: 0
m_LookaheadSmoothing: 0
m_LookaheadIgnoreY: 0
m_HorizontalDamping: 0
m_VerticalDamping: 0
m_ScreenX: 0.5
m_ScreenY: 0.5
m_DeadZoneWidth: 0
m_DeadZoneHeight: 0
m_SoftZoneWidth: 0.8
m_SoftZoneHeight: 0.8
m_BiasX: 0
m_BiasY: 0
m_CenterOnActivate: 1
--- !u!114 &2086678791
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2086678788}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9384ab8608cdc3d479fe89cd51eed48f, type: 3}
m_Name:
m_EditorClassIdentifier:
m_BindingMode: 4
m_FollowOffset: {x: 0, y: 2.5, z: -3}
m_XDamping: 1
m_YDamping: 1
m_ZDamping: 1
m_AngularDampingMode: 0
m_PitchDamping: 0
m_YawDamping: 0
m_RollDamping: 0
m_AngularDamping: 0
m_Heading:
m_Definition: 2
m_VelocityFilterStrength: 4
m_Bias: 0
m_RecenterToTargetHeading:
m_enabled: 0
m_WaitTime: 1
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
m_XAxis:
Value: 0
m_SpeedMode: 0
m_MaxSpeed: 300
m_AccelTime: 0.1
m_DecelTime: 0.1
m_InputAxisName:
m_InputAxisValue: 0
m_InvertInput: 1
m_MinValue: -180
m_MaxValue: 180
m_Wrap: 1
m_Recentering:
m_enabled: 0
m_WaitTime: 1
m_RecenteringTime: 2
m_LegacyHeadingDefinition: -1
m_LegacyVelocityFilterStrength: -1
m_LegacyRadius: 3.4028235e+38
m_LegacyHeightOffset: 3.4028235e+38
m_LegacyHeadingBias: 3.4028235e+38
m_HeadingIsSlave: 1
--- !u!114 &2086678792
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2086678788}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &2105062287
GameObject:
m_ObjectHideFlags: 0
@ -14775,6 +15612,7 @@ RectTransform:
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 332484089}
- {fileID: 496180836}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
@ -14795,6 +15633,7 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
_persistent: 0
cursorTexture: {fileID: 2800000, guid: 5d76030a282af4f58a2ea98a00c1172c, type: 3}
--- !u!1001 &2117062064
PrefabInstance:
m_ObjectHideFlags: 0
@ -15095,6 +15934,7 @@ SceneRoots:
m_ObjectHideFlags: 0
m_Roots:
- {fileID: 776161958}
- {fileID: 1036440296}
- {fileID: 1861343896}
- {fileID: 734248431}
- {fileID: 1540310984}

View File

@ -71,6 +71,15 @@ public partial class @BlueWater: IInputActionCollection2, IDisposable
""processors"": """",
""interactions"": """",
""initialStateCheck"": false
},
{
""name"": ""TakeAim"",
""type"": ""Button"",
""id"": ""e520b814-2e0b-4d05-853e-ac1a35bb6b51"",
""expectedControlType"": ""Button"",
""processors"": """",
""interactions"": """",
""initialStateCheck"": false
}
],
""bindings"": [
@ -172,6 +181,17 @@ public partial class @BlueWater: IInputActionCollection2, IDisposable
""action"": ""Zkey"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""74928808-e5f4-4341-997b-0c0b40aa4b4a"",
""path"": ""<Keyboard>/space"",
""interactions"": """",
""processors"": """",
""groups"": ""Keyboard"",
""action"": ""TakeAim"",
""isComposite"": false,
""isPartOfComposite"": false
}
]
},
@ -309,6 +329,7 @@ public partial class @BlueWater: IInputActionCollection2, IDisposable
m_Player_Interaction = m_Player.FindAction("Interaction", throwIfNotFound: true);
m_Player_InteractionHold = m_Player.FindAction("InteractionHold", throwIfNotFound: true);
m_Player_Zkey = m_Player.FindAction("Zkey", throwIfNotFound: true);
m_Player_TakeAim = m_Player.FindAction("TakeAim", throwIfNotFound: true);
// Camera
m_Camera = asset.FindActionMap("Camera", throwIfNotFound: true);
m_Camera_Zoom = m_Camera.FindAction("Zoom", throwIfNotFound: true);
@ -383,6 +404,7 @@ public partial class @BlueWater: IInputActionCollection2, IDisposable
private readonly InputAction m_Player_Interaction;
private readonly InputAction m_Player_InteractionHold;
private readonly InputAction m_Player_Zkey;
private readonly InputAction m_Player_TakeAim;
public struct PlayerActions
{
private @BlueWater m_Wrapper;
@ -392,6 +414,7 @@ public partial class @BlueWater: IInputActionCollection2, IDisposable
public InputAction @Interaction => m_Wrapper.m_Player_Interaction;
public InputAction @InteractionHold => m_Wrapper.m_Player_InteractionHold;
public InputAction @Zkey => m_Wrapper.m_Player_Zkey;
public InputAction @TakeAim => m_Wrapper.m_Player_TakeAim;
public InputActionMap Get() { return m_Wrapper.m_Player; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
@ -416,6 +439,9 @@ public partial class @BlueWater: IInputActionCollection2, IDisposable
@Zkey.started += instance.OnZkey;
@Zkey.performed += instance.OnZkey;
@Zkey.canceled += instance.OnZkey;
@TakeAim.started += instance.OnTakeAim;
@TakeAim.performed += instance.OnTakeAim;
@TakeAim.canceled += instance.OnTakeAim;
}
private void UnregisterCallbacks(IPlayerActions instance)
@ -435,6 +461,9 @@ public partial class @BlueWater: IInputActionCollection2, IDisposable
@Zkey.started -= instance.OnZkey;
@Zkey.performed -= instance.OnZkey;
@Zkey.canceled -= instance.OnZkey;
@TakeAim.started -= instance.OnTakeAim;
@TakeAim.performed -= instance.OnTakeAim;
@TakeAim.canceled -= instance.OnTakeAim;
}
public void RemoveCallbacks(IPlayerActions instance)
@ -576,6 +605,7 @@ public partial class @BlueWater: IInputActionCollection2, IDisposable
void OnInteraction(InputAction.CallbackContext context);
void OnInteractionHold(InputAction.CallbackContext context);
void OnZkey(InputAction.CallbackContext context);
void OnTakeAim(InputAction.CallbackContext context);
}
public interface ICameraActions
{

View File

@ -49,6 +49,15 @@
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "TakeAim",
"type": "Button",
"id": "e520b814-2e0b-4d05-853e-ac1a35bb6b51",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": false
}
],
"bindings": [
@ -150,6 +159,17 @@
"action": "Zkey",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "74928808-e5f4-4341-997b-0c0b40aa4b4a",
"path": "<Keyboard>/space",
"interactions": "",
"processors": "",
"groups": "Keyboard",
"action": "TakeAim",
"isComposite": false,
"isPartOfComposite": false
}
]
},

View File

@ -1,18 +1,45 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Cinemachine;
using Sirenix.OdinInspector;
using UnityEngine;
using UnityEngine.InputSystem;
public class CameraController : MonoBehaviour
{
[Title("Dredge Cam")]
[Required("드렛지 카메라를 넣어주세요.")]
public CinemachineVirtualCamera dredgeCam;
private CinemachineOrbitalTransposer dredgeCamOrbitalTransposer;
[Range(0,1000)]
public int rotateSpeed = 10;
[Required("습격모드 카메라를 넣어주세요.")]
public CinemachineVirtualCamera assaultCam;
[Required("보트내부 카메라를 넣어주세요.")]
public CinemachineVirtualCamera InShipCam;
[Required("조준 카메라를 넣어주세요.")]
public CinemachineFreeLook takeAimCam;
public float sensitivity = 0.01f;
[MinMaxSlider(2, 50, true)]
public Vector2 heightLimits = new Vector2(2, 50);
private void Start()
{
dredgeCamOrbitalTransposer = dredgeCam.GetCinemachineComponent<CinemachineOrbitalTransposer>();
}
private void Update()
{
TakeCamMovement();
DredgeCamRotate();
}
public void CamAssaultMode()
{
assaultCam.Priority = 1;
@ -31,4 +58,46 @@ public class CameraController : MonoBehaviour
dredgeCam.Priority = 0;
assaultCam.Priority = 0;
}
}
private void TakeCamMovement()
{
Vector2 mouseDelta = Mouse.current.delta.ReadValue();
Vector3 newPosition = takeAimCam.transform.position;
newPosition.y += mouseDelta.y * sensitivity;
newPosition.y = Mathf.Clamp(newPosition.y, heightLimits.x, heightLimits.y);
newPosition.x = GameManager.Inst.player.transform.position.x;
newPosition.z = GameManager.Inst.player.transform.position.z;
takeAimCam.transform.position = newPosition;
// Rotate around Y axis (Up direction)
takeAimCam.transform.RotateAround(takeAimCam.transform.position, Vector3.up, mouseDelta.x * sensitivity);
}
public void CamTakeAim(bool isTakeAim)
{
takeAimCam.Priority = isTakeAim ? 2 : 0;
float yRotation = dredgeCam.transform.rotation.eulerAngles.y;
takeAimCam.transform.rotation =
Quaternion.Euler(takeAimCam.transform.rotation.eulerAngles.x, yRotation, takeAimCam.transform.rotation.eulerAngles.z);
}
public void DredgeCamRotate()
{
if (Input.GetMouseButtonDown(1))
{
//dredgeCam의 X Axis의 Speed를 변경
dredgeCamOrbitalTransposer.m_XAxis.m_MaxSpeed = rotateSpeed;
dredgeCamOrbitalTransposer.m_XAxis.m_InputAxisName = "Mouse X";
dredgeCamOrbitalTransposer.m_RecenterToTargetHeading.m_enabled = false;
}
else if (Input.GetMouseButtonUp(1))
{
//dredgeCam의 X Axis의 Speed를 원래대로
dredgeCamOrbitalTransposer.m_XAxis.m_MaxSpeed = 0;
dredgeCamOrbitalTransposer.m_XAxis.m_InputAxisName = "";
dredgeCamOrbitalTransposer.m_RecenterToTargetHeading.m_enabled = true;
}
}
}

View File

@ -26,6 +26,11 @@ public class GameManager : Singleton<GameManager>
Init();
}
private void Start()
{
Cursor.visible = false;
}
public void testPrint()
{
print("Boat가 목표에 도착해서 이 함수를 호출합니다");

View File

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

View File

@ -33,6 +33,7 @@ namespace _02.Scripts.WaterAndShip
public bool IsAssaultMode { get; set; }
public bool IsInShipMode { get; set; }
public bool IsdredgeMode { get; set; }
public bool IsTakeAim { get; set; }
private void Init()
{
@ -157,5 +158,12 @@ namespace _02.Scripts.WaterAndShip
{
UiManager.Inst.AddCard();
}
private void OnTakeAim(InputValue value)
{
IsTakeAim = !IsTakeAim;
GameManager.Inst.CameraController.CamTakeAim(IsTakeAim);
UiManager.Inst.AimOnOff(IsTakeAim);
}
}
}

View File

@ -3,26 +3,46 @@ using System.Collections;
using System.Collections.Generic;
using Doozy.Runtime.Reactor.Animations;
using Doozy.Runtime.Reactor.Animators;
using Sirenix.OdinInspector;
using UnityEngine;
public class UiManager : Singleton<UiManager>
{
private Transform cardLayoutGroup;
public UIAnimator CardLayoutGroupAnimator { get; set; }
[Title("TakeAim")]
private GameObject takeAim;
public Texture2D cursorTexture;
private bool isTakeAim;
private void Init()
{
cardLayoutGroup = transform.Find("CardLayoutGroup");
CardLayoutGroupAnimator = cardLayoutGroup.GetComponent<UIAnimator>();
takeAim = transform.Find("Aim").gameObject;
}
protected override void OnAwake()
{
Init();
}
private void OnGUI()
{
if (isTakeAim) return;
Vector2 mousePosition = new Vector2(Input.mousePosition.x, Screen.height - Input.mousePosition.y);
GUI.DrawTexture(new Rect(mousePosition.x, mousePosition.y, cursorTexture.width, cursorTexture.height), cursorTexture);
}
public void AddCard()
{
Instantiate(DataManager.Inst.assaultCard, cardLayoutGroup);
}
public void AimOnOff(bool isOn)
{
takeAim.SetActive(isOn);
isTakeAim = isOn;
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -0,0 +1,92 @@
fileFormatVersion: 2
guid: 6333624b899704051b961af97738160d
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -0,0 +1,140 @@
fileFormatVersion: 2
guid: 5d76030a282af4f58a2ea98a00c1172c
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

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

View File

@ -12,26 +12,34 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 1
version: 7
--- !u!21 &2100000
Material:
serializedVersion: 6
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: CircleParticle
m_Shader: {fileID: 211, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _ALPHATEST_ON _EMISSION
m_LightmapFlags: 0
m_Shader: {fileID: 4800000, guid: 0406db5a14f94604a8c57ccfbc9f3b46, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _ALPHATEST_ON
- _EMISSION
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords:
- _FLIPBOOKBLENDING_OFF
m_LightmapFlags: 2
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 2450
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: TransparentCutout
RenderType: Transparent
disabledShaderPasses:
- SHADOWCASTER
- ALWAYS
- DepthOnly
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
@ -48,7 +56,7 @@ Material:
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 10307, guid: 0000000000000000f000000000000000, type: 0}
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
@ -63,8 +71,10 @@ Material:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 1
- _AlphaToMask: 0
- _Blend: 1
- _BlendOp: 0
- _BumpScale: 1
@ -78,17 +88,16 @@ Material:
- _DistortionEnabled: 0
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0.1
- _DstBlend: 0
- _EmissionEnabled: 1
- _DstBlend: 10
- _DstBlendAlpha: 10
- _EnvironmentReflections: 1
- _FlipbookBlending: 0
- _FlipbookMode: 0
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _LightingEnabled: 0
- _Metallic: 0
- _Mode: 1
- _Mode: 0
- _OcclusionStrength: 1
- _QueueOffset: 0
- _ReceiveShadows: 1
@ -99,15 +108,16 @@ Material:
- _SoftParticlesNearFadeDistance: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 1
- _WorkflowMode: 1
- _ZWrite: 1
- _ZWrite: 0
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _BaseColorAddSubDiff: {r: 1, g: 0, b: 0, a: 0}
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _ColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0}
- _EmissionColor: {r: 0.8, g: 0.7282759, b: 0.64, a: 1}
- _EmissionColor: {r: 1, g: 0.6887128, b: 0.39270878, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
m_BuildTextureStacks: []

View File

@ -12,18 +12,25 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 1
version: 7
--- !u!21 &2100000
Material:
serializedVersion: 6
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SquareParticle
m_Shader: {fileID: 211, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _ALPHAPREMULTIPLY_ON _COLORADDSUBDIFF_ON
m_LightmapFlags: 0
m_Shader: {fileID: 4800000, guid: 0406db5a14f94604a8c57ccfbc9f3b46, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _COLORADDSUBDIFF_ON
- _EMISSION
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords:
- _FLIPBOOKBLENDING_OFF
m_LightmapFlags: 2
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
@ -31,10 +38,15 @@ Material:
RenderType: Transparent
disabledShaderPasses:
- SHADOWCASTER
- ALWAYS
- DepthOnly
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
@ -47,7 +59,23 @@ Material:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendOp: 0
- _BumpScale: 1
- _CameraFadingEnabled: 0
@ -61,18 +89,35 @@ Material:
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0.1
- _DstBlend: 10
- _EmissionEnabled: 0
- _DstBlendAlpha: 10
- _EnvironmentReflections: 1
- _FlipbookBlending: 0
- _FlipbookMode: 0
- _LightingEnabled: 0
- _Mode: 3
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SoftParticlesEnabled: 0
- _SoftParticlesFarFadeDistance: 1
- _SoftParticlesNearFadeDistance: 0
- _SrcBlend: 1
- _SpecularHighlights: 1
- _SrcBlend: 5
- _SrcBlendAlpha: 1
- _Surface: 1
- _WorkflowMode: 1
- _ZWrite: 0
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _BaseColorAddSubDiff: {r: 1, g: 0, b: 0, a: 0}
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _ColorAddSubDiff: {r: 1, g: 0, b: 0, a: 0}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColor: {r: 1, g: 0.6887128, b: 0.39270878, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
m_BuildTextureStacks: []

View File

@ -12,18 +12,24 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 1
version: 7
--- !u!21 &2100000
Material:
serializedVersion: 6
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Dash Line
m_Shader: {fileID: 211, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _ALPHAPREMULTIPLY_ON _COLOROVERLAY_ON
m_LightmapFlags: 0
m_Shader: {fileID: 4800000, guid: 0406db5a14f94604a8c57ccfbc9f3b46, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _COLOROVERLAY_ON
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords:
- _FLIPBOOKBLENDING_OFF
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
@ -31,7 +37,8 @@ Material:
RenderType: Transparent
disabledShaderPasses:
- SHADOWCASTER
- ALWAYS
- DepthOnly
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
@ -48,7 +55,7 @@ Material:
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 3fc213b39220a094fafa316f16ab6add, type: 3}
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
@ -63,8 +70,10 @@ Material:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 2
- _BlendOp: 0
- _BumpScale: 1
@ -78,17 +87,16 @@ Material:
- _DistortionEnabled: 0
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0.1
- _DstBlend: 10
- _EmissionEnabled: 0
- _DstBlend: 1
- _DstBlendAlpha: 1
- _EnvironmentReflections: 1
- _FlipbookBlending: 0
- _FlipbookMode: 0
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _LightingEnabled: 0
- _Metallic: 0
- _Mode: 3
- _Mode: 0
- _OcclusionStrength: 1
- _QueueOffset: 0
- _ReceiveShadows: 1
@ -98,7 +106,8 @@ Material:
- _SoftParticlesFarFadeDistance: 1
- _SoftParticlesNearFadeDistance: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlend: 5
- _SrcBlendAlpha: 1
- _Surface: 1
- _WorkflowMode: 1
- _ZWrite: 0
@ -107,7 +116,7 @@ Material:
- _BaseColorAddSubDiff: {r: 1, g: 0, b: 0, a: 0}
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 0.46666664, g: 0.53014416, b: 1, a: 1}
- _ColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
m_BuildTextureStacks: []

View File

@ -12,18 +12,24 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 1
version: 7
--- !u!21 &2100000
Material:
serializedVersion: 6
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Slash Line
m_Shader: {fileID: 211, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _ALPHAPREMULTIPLY_ON _COLOROVERLAY_ON
m_LightmapFlags: 0
m_Shader: {fileID: 4800000, guid: 0406db5a14f94604a8c57ccfbc9f3b46, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _COLOROVERLAY_ON
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords:
- _FLIPBOOKBLENDING_OFF
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
@ -31,7 +37,8 @@ Material:
RenderType: Transparent
disabledShaderPasses:
- SHADOWCASTER
- ALWAYS
- DepthOnly
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
@ -48,7 +55,7 @@ Material:
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: a4bf013de2d0d0e458a8e9ecd5313c8a, type: 3}
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
@ -63,8 +70,10 @@ Material:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 2
- _BlendOp: 0
- _BumpScale: 1
@ -78,17 +87,16 @@ Material:
- _DistortionEnabled: 0
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0.1
- _DstBlend: 10
- _EmissionEnabled: 0
- _DstBlend: 1
- _DstBlendAlpha: 1
- _EnvironmentReflections: 1
- _FlipbookBlending: 0
- _FlipbookMode: 0
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _LightingEnabled: 0
- _Metallic: 0
- _Mode: 3
- _Mode: 0
- _OcclusionStrength: 1
- _QueueOffset: 0
- _ReceiveShadows: 1
@ -98,7 +106,8 @@ Material:
- _SoftParticlesFarFadeDistance: 1
- _SoftParticlesNearFadeDistance: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlend: 5
- _SrcBlendAlpha: 1
- _Surface: 1
- _WorkflowMode: 1
- _ZWrite: 0
@ -106,8 +115,8 @@ Material:
- _BaseColor: {r: 0.4666667, g: 0.53014416, b: 1, a: 1}
- _BaseColorAddSubDiff: {r: 1, g: 0, b: 0, a: 0}
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 0.46666652, g: 0.53014416, b: 1, a: 1}
- _ColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0}
- _Color: {r: 0.46666664, g: 0.53014416, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
m_BuildTextureStacks: []

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -0,0 +1,845 @@
[1.60]
- Recorder. Support for runtime mesh demolition recording and playback.
- Recorder. Improved recording for smooth playback.
- Recorder. New Recording how-to.
- Shatter. Fix for fragments with more than 65k vertices.
- Sound. Fix for property change with several selected objects.
- Rigid. Editor Setup fix for MeshRoot with Connectivity setup.
- Manager. Тew Global Parent option for Parent property in Advanced Demolition properties.
Allows to define parent for all demolition fragments.
[1.59]
- Shatter. New Hexagon fragmentation type.
- Shatter. Position Vector3 property for Center.
- Shatter. Center property fix.
[1.58]
- Combine. New mesh Index Format property. Allows to combine meshes with more than 65535 vertices.
- Combine. Combined mesh normals fix.
- Combine. Vertex colors support.
- Combine. How to Environment modeling in Editor and in Play mode.
- Manager. Double manager fix.
- Manager. New Vertices Amount property. Defined Maximum vertices amount limit for meshes to perform Planar Check.
- Blade. Blade object do not initiate Slice or Demolition anymore at collision enter/exit with trigger colliders.
- Debris. Debris reference scale copy fix for copied Debris components.
- RigidRoot. Fix for Inactive shards excluded from simulation by offset.
[1.57]
- Shatter. Fix for Vertex Color transfer to fragments with disabled Decompose property.
- Shatter. Fix for Custom Vertex Color set.
- Manager. New Convex collider Cooking Options property.
- Manager. New Debug Messages property. Allows to disable debug messages for game builds.
- Rigid. Fix for Reference Demolition with MeshRoot/Connectivity replacement.
- Sound. New properties Priority, Spatial Blend, Min/Max Distance when used with Audio Mixer.
- Lib. Performance fix for Android builds.
[1.56]
- Rigid. Layer and Tag for Cluster demolition.
- Compilation error fix for platforms without runtime demolition support.
[1.55]
- Manager. Improved Runtime Demolition Fragments pooling. Disabled by default.
Already used runtime fragment gameobjects with all base components can go back to pool to be reused later again.
- Manager. Improved Particle System pooling. Enabled by default.
Already used Debris and Dust particle systems can go back to pool to be reused later again.
- Debris & Dust. Fix for demolished mesh with vertex colors.
- Debris & Dust. Fix for unparented particle systems.
- Bomb. Fixed gizmo preview for scaled objects.
- A lot of performance and memory usage optimizations
[1.54]
- Shatter. Vertex Color transfer for outer surface.
- Shatter. Custom Vertex Color for fragments inner surface.
- Shatter. Support for Custom UV coordinate (one point) for inner surface of fragments.
- Shatter. Fix for Fragment Size, Vertex and Triangles limitations.
- Rigid. Nested Cluster Editor Setup fix.
- Debris & Dust. Custom Tag and Layer properties for particles.
- Restriction. Can be applied to any gameobject. Restricted Rigid component should be defined manually in this case.
Allows to Reset by Restriction demolished Rigid objects.
- Updated documentation.
[1.53]
- Connectivity. New Variation property in Collapse. Allows to get slightly different results for By Area and By Size collapse.
- Connectivity. New Seed property in Collapse. Defines the seed for Random collapse. Value 0 define random seed at every start.
- Connectivity. Seed 0 in Filter properties provides random connections for Percentage filter.
- Connectivity. Fix for Editor Setup with disabled activation By Connectivity.
- Connectivity. Fix for Collapse last step.
- Rigid. Reference Demolition support for Mesh Root Object type setup.
- Sound. Collision Sound support. Allows to Play sound on collision. Can be used without Rigid component.
- Debris & Dust. New Visible property in Limitations. Allows to emit particles only if the emitting object is visible.
- Gun. New Offset property for Add Explosion Force Impact type. Allows to offset Impact point closer or farther to Gun position.
- Unyielding. Fix for Inactive simulation type defined by component.
- Manager. Public method DestroyStorage() to destroy all fragments in storage.
- Recorder. Fix for ClipName change.
- A lot of small fixes and improvements.
- Several New Simulation How-to.
[1.52]
- Rigid. Global and Local Fading event support.
- Rigid. Connected Cluster Per Shard damage apply in radius support for Bomb and ApplyDamage() method.
- Rigid. Demolition by Damage collision with disabled By Collision demolition fix.
- Rigid. Set Static fading fix.
- Rigid. MeshRoot with Connectivity setup reset fix.
- Rigid. New Sleeping Threshold property in Physics properties.
- RigidRoot. New Sleeping Threshold property in Physics properties.
- Connectivity. Fix for not demolished clusters with enabled Activation Layer.
- Debris & Dust. New Motion Vectors property in Rendering.
- Libs. Removed Debug files from Android and iOS libraries. Can be requested if needed.
[1.51]
- Connectivity. RigidBody Mass fix for clusters created by Clusterize property.
- Connectivity. Activation Dust emitting fix for Clusterized shards.
- Connectivity. Local MeshRoot Activation event fix for clusterized shards.
- Connectivity. Joint support. WIP
- Shatter. Custom Point cloud preview points out of object bound with red color.
- Shatter. Dll Fix for clustering with Radial fragmentation type.
- Rigid. Fix for Mesh Runtime demolition with Shatter component.
- Rigid. Fix for fragments parenting in case of Awake Prefragment demolition type.
- Rigid. Fix for Connected Cluster collider type property.
- Rigid. Fix for sliced mesh with enabled Add Children property.
- Bomb. Tutorial scenes.
[1.50]
- Shatter. Size limitation.
- Shatter. Triangle limitation.
- Shatter. All fragments created by limitation properties get one parent.
- Rigid. Demolition By Collision and By Damage with collision collection now work independently.
- Rigid. Nested & Connected Cluster allows to use Rigid and Shatter Components with custom properties on demolished shards.
- Rigid. Debris and Dust emitting for fragments clusterized by Connectivity.
- Rigid. New Add Children property for Mesh Demolition. Allows to add mesh children to fragments.
- RigidRoot. Debris and Dust emitting for shards clusterized by Connectivity.
[1.49]
- RigidRoot. Local and Global Activation event returns activated Shard as well, in addition to RigidRoot parent.
- RigidRoot. Change Layer for activated shards with reset support.
- RigidRoot. Documentation and Tutorial scene.
- Activator. Velocity force apply in activator local space coordinates.
- Connectivity. Activation event returns list of activated shards and clusters in addition to Connectivity component.
- Bomb. New By Curve Impulse Fade type. Allows to define explosion strength fade by curve.
- Rigid. Connected Cluster mass by material fix.
- Rigid. Connected Cluster mass after demolition fix.
- Rigid. Connected Cluster demolition fade life time fix.
- Rigid. Connected Cluster shooting with damage apply fix.
- Rigid. Connected Cluster shooting with 0 impact radius fix.
- Rigid. Connected Cluster demolition Minimum and Maximum lower cap set to 1.
- Rigid. Connected Cluster per shard damage apply support by Gun and by collision.
- Rigid. Cluster Demolition properties can be edited with Mesh Root object type.
- Rigid. Local Activation event for MeshRoot Rigid. Returns Activated Rigid and its MeshRoot parent.
- Rigid. Inherit Tag and Custom Tag properties for demolition fragments.
- Rigid. Inherit Layer and Custom Layer properties for demolition fragments.
IMPORTANT: Rigid.meshDemolition.properties.layer field was changed from String type to Int type.
Disable Inherit Layer in Mesh Demolition / Advanced Properties and define Custom Layer which was
defined by string in older builds in case you defined different layer for demolition fragments.
- Rigid. Change Layer and Custom Layer properties for activated objects.
IMPORTANT: Rigid.activation.layer field was changed from String type to Int type.
Enable Change Layer in Activation Properties and define Layer which was
defined by string in older builds in case you defined different layer for activated objects.
- Rigid. Changed layer reset for activated objects with changed Layer.
- UI. Opened foldouts don't close in Play Mode.
[1.48]
- Rigid. New UI.
- Rigid. Limitations Tag changed to TagField.
- Rigid. Children with Shatter component get Use Shatter enabled when get Rigid component at parent demolition.
- Rigid. Connected cluster By Mesh connectivity type renamed to By Triangles.
- Rigid. New By Polygons and ByBoundingBoxAndPolygons connectivity types.
- RigidRoot. New UI.
- RigidRoot. Limitations Tag changed to TagField.
- RigidRoot. Fading fix for shards which were clusterized and then demolished.
- Activator. Activation by Collider collision.
- Activator. Activation by Particle System collision.
- Connectivity. Connectivity activation event, tutorial script and scene.
- Connectivity. By Mesh connectivity type renamed to By Triangles.
- Connectivity. New By Polygons and ByBoundingBoxAndPolygons connectivity types.
- Blade. Fix for not removed empty roots.
- Blade. Removed "_fr_" name appendix for slices to avoid very long names.
- Wind. UI fix.
- Wind. Noise Scale preview fix.
- Linux build fix.
[1.47]
- Rigid. Activation By Local Offset relative to parent.
- Rigid. Demolished fragments do not copy Outer Material from original object.
- Rigid. Mesh Demolition Clusterize property now demolishes clusterized fragments at collision.
- Rigid. Mesh Demolition Seed property can be set to 0. Allows to generate random seed for every demolition.
- Rigid. Use Shatter consider Amount Variation property for Voronoi, Slabs and Splinters fragmentation types.
- Rigid. After Mesh demolition all children with mesh get Rigid component and continue simulation as fragment.
- Rigid. Contact Bias property for Awake Precache and Awake Prefragment always 0.
- Rigid. Center Bias fix for Awake Precache and Awake Prefragment when used with Shatter component.
- RigidRoot. Activation By Local Offset relative to parent.
- RigidRoot. Editor Setup and Reset Setup fix for applied and destroyed colliders.
- RigidRoot. Editor Setup and Reset Setup fix for shards with Rigid component.
- RigidRoot. Warning and fix for destroyed shards/components after Editor Setup.
- Connectivity. Fracture group of properties. Allows to activate or clusterize group of shards by trigger collider.
- Connectivity. Public method Fracture (Collider collider, int debris). Collider should be set to trigger.
- Connectivity. RayFireMan Parent property fix for clusterized groups of activated shards.
- Shatter. Low poly elements fix for Slice frag type.
- Shatter. Input Precap property now works for Runtime mode as well.
- Sound. Play Once property for sound events.
- Gun. Default Damage value changed from 1 to 100.
[1.46]
- Rigid. MeshRoot object Reset properties copy to fragments fix.
- Rigid. Reference Demolition support for reference without Rigid component.
- Rigid. Nested Cluster Demolition depth fix.
- Debris and Dust. Demolition emit support for sliced Rigid Mesh object.
- Debris and Dust. Demolition emit support for sliced by method Rigid Connected Cluster object.
- Sound. Demolition sound support for sliced Rigid Mesh object.
- Sound. Demolition sound support for sliced by method Rigid Connected Cluster object.
- RigidRoot. Activation Event support for RigidRoot shard activation.
- RigidRoot. Use Gravity fix for activated shards.
- RigidRoot. Mass By property fix.
- Blade. New Skin property. Add RigidBody component in order to detect collision with Skinned Mesh objects.
- Blade. Slice plane data stored in "slicePlanes" array after slice: [plane position, plane direction].
- Assembly name fix.
[1.45]
- Bomb. RigidRoot support.
- Bomb. Activate Inactive property. Allows to activate Inactive objects and Explode them.
- Bomb. Inactive objects not affected by explosion if inactive Activation is disabled.
- Shatter. Split Rotation property for Bricks fragmentation type.
- Shatter. Clustering Seed 0 provides random seed each time.
- Rigid. Already initialized Rigid for Reference Demolition fix.
- Rigid. Unyielding support for sliced Mesh object type.
- Rigid. Unyielding support for demolished Mesh object type.
- Activator. UI fixes.
- Fragmentation multithreading fix.
- IL2CPP. Demolition with clustering fix.
- Updated documentation.
[1.44]
- Shatter. New Bricks fragmentation type.
- Shatter. New Voxels fragmentation type.
- Shatter. New user interface.
- Shatter. Custom frag type .transforms and .vector3 fields changed from array to list.
- Shatter. Removed outer material property field.
- Shatter. Fix for Skinned Mesh fragmentation with scaled parents.
- Activator. New user interface.
- Activator. New Force group of properties. Allows to add initial velocity and spin to activated fragments.
- Activator. New public method SetGizmoType () to change gizmo type and collider at runtime.
- Rigid. Ignore Near property support for Awake Prefragment and Runtime Mesh demolition fragments.
- Rigid. Collision demolition optimizations.
- Rigid. Transformation offset fix for Demolition() method.
- Rigid. Fix for Skinned Mesh demolition with scaled parents.
- RigidRoot. Not connected fragments activation fix.
- RigidRoot. Fix for activated shards without RigidBody component.
- Manager. New button and public method DestroyAll () to destroy all fragments.
- Manager. New user interface.
- Blade. New user interface.
- Blade. Target field removed.
IMPORTANT: Add object which was in Target field to Target List to get previous behaviour.
- Connectivity. New user interface.
- Bomb. New user interface.
- Gun. New user interface.
- Sound. New user interface.
- Recorder. New user interface.
- Unyielding. New user interface.
- Combine. New user interface.
- Snapshot. New user interface.
- Restriction. New user interface.
- Vortex. New user interface.
- Wind. New user interface.
- Debris. New user interface.
- Dust. New user interface.
IMPORTANT: Dust's ".dustMaterials" field wad changed from Array to List.
[1.43]
- RigidRoot. Support for children with Rigid component with MeshRoot object type.
Allows to have multiple prefabs with fragments as RigidRoot children for custom Physics properties and particle generation.
With Connectivity component all prefab fragments will be connected at RigidRoot Initialization into single connected structure.
- RigidRoot. Support for empty root children without component with mesh fragments as children.
- RigidRoot. Editor Setup method and button. Performs most resourceful operations in Editor.
Add RigidBody and Collider components to all shards, calculate connections info for Connectivity component.
Instantiation of RigidRoot prefab with 1400 connected fragments ready for demolition takes 44 Ms instead of 13 SECONDS without Editor Setup.
- RigidRoot. Optimized connectivity data storage for prefabs.
- Rigid. Skinned Mesh demolition By Collision.
- Rigid. Connected Cluster demolition one frame freeze fix.
- Rigid. Editor Setup support for MeshRoot object type. Performs most resourceful operations in Editor.
Add RayFire Rigid and Collider components to children, calculate connections info for Connectivity component.
- Connectivity. Can be used only with MeshRoot Rigid or with RigidRoot components.
- Connectivity. Removed Connectivity setup buttons.
- Connectivity. Removed automatic runtime initialisation.
IMPORTANT. Use public void Initialize() method in case of runtime component add.
- Connectivity. New Expand property. Expands shards bounding box for better connectivity between shards.
- Bomb. New Deletion property, measures in percentage relative to Range property, allows to destroy objects in Deletion range.
- Bomb. Explosion position calculation fix for Height Offset property.
- Bomb. Explosion gizmo now consider Height Offset property.
- Bomb. Restore fix for exploded and deleted objects with Rigid component.
- Gun. New Impact Type property. Allows to choose between AddExplosionForce or AddForceAtPosition impact type.
IMPORTANT: It was used AddForceAtPosition in previous builds. Now default type is AddExplosionForce. Change your setup accordingly.
- Unyielding. Can be used with MeshRoot setup for setting custom simulation type without Connectivity component.
- Manager. Self initialization at Reset().
[1.42]
- Mac and iOS library fix.
- RigidRoot. Support for children with Rigid component with Mesh Object Type for custom properties.
- Rigid and RigidRoot. Duplicate coroutines fix.
- Rigid. Connected Cluster demolition fix for secondary Connected Clusters (Min and Max properties).
[1.41]
- Lib. Fragmentation freezing fix.
- Debris and Dust components public method Emit() returns created particle system.
- Debris and Dust components new public method Clean() to destroy all created particle systems.
- Rigid. New Sim Type property in Mesh Demolition properties. Set custom simulation type for fragments.
IMPORTANT. This affects Kinematic object demolition because the default value is Inherit.
Fragments won't be simulated as dynamic after demolition and will stay Kinematic.
Set Sim Type property to Dynamic to get original simulation behaviour.
- Rigid. New Shard Amount property in Fading.
Prevent fading of clusters with the amount of shards bigger than a defined value.
- Rigid. Connected Cluster Demolition fade fix.
IMPORTANT. Now partially demolished main Connected Cluster also initiate Fading.
Use Shard Amount property to prevent its fading if it is too big to fade.
- Rigid. Integrity fix for Connected Clusters created in runtime.
- RigidRoot. Fade By Offset fix for Connected Clusters created by Connectivity.
[1.40]
- Shatter. New Combine Children property in Advanced properties.
Allows to combine all children meshes into one mesh and shatter this combined mesh.
- Debris & Dust. Collides With property changed to Layer Mask and allows to select layers instead of Everything or Nothing choice.
IMPORTANT: Make proper adjustments in your prefabs and setups to get the same collision behaviour.
- RigidRoot. Cached RigidRoot with Connectivity fix.
- Rigid. Instant (after initialisation) demolition fix.
- Rigid. Demolished fragments velocity fix.
- Blade. Public variable "rigid" to get sliced object at local or global slicing event.
- Combine. Maximum amount of combined mesh vertices (65535) warning and fix.
- Updated Documentation and new How-Tos.
[1.39]
- RayfireAssembly and RayfireEditorAssembly assembly definition assets.
- RigidRoot. Reset support. Fading Reset support.
- RigidRoot. New By Offset fading initiation.
- Rigid & RigidRoot. Move Down fade type renamed to Fall Down. New Move Down fade type which actually move object down.
- Rigid & RigidRoot. New Set Static fade type.
- Rigid & RigidRoot. New Set Kinematic fade type.
- Rigid. New By Offset fading initiation.
- Rigid. Clusterize property fix for Awake Precache and Awake Prefragment demolition types.
- Rigid. Mesh Root transform reset fix.
- Rigid. Mesh Root Unyielding components reset fix.
- Rigid. Reference Demolition with particles fix.
[1.38]
- Runtime demolition and Editor fragmentation for Linux platform.
- Shatter. Automatic UV generation for objects without UV coordinates.
- Rigid. New Clusterize property for demolished mesh. Allows to clusterize fragments created during runtime demolition.
- Rigid. New By Collision property in Limitations. Allows to enable/disable demolition by collision.
- Rigid. Mesh Root reset support.
- Rigid. New Connectivity property in Rigid Reset properties.
- Rigid. Mesh, Nested Cluster and Connected Cluster Reset fixes.
- Rigid. New Layer property in Activation properties. Allows to set custom layer for activated objects.
- Rigid. Public SaveInitTransform () method to overwrite initialize position for fragments and shards.
- Rigid. Parenting for demolished Connected Cluster shards fix.
- Rigid. Awake Prefragment demolition depth fix.
- Rigid. Limitation Tag copy to fragments fix.
- Connectivity. Reset support via Rigid with Mesh Root type on the same object.
- Fixed help links.
[1.37]
- Rigid. Physics. Ignore Near property. Allows to disable collision between near fragment to avoid unstable simulation.
Works only for Mesh Root and Connected Cluster object types.
- Rigid. Reference Demolition Velocity fix for referenced Connected Cluster.
- Rigid. Tag string in Limitations properties. Allows to demolish object by collision only with objects with specific Tag.
- Rigid Root. Ignore Near property in Physics properties.
- Rigid Root. Setup Cluster fix for shards with changed simulation type.
- Rigid Root. Fix for Box and Sphere collider Types.
- Connectivity. Fade support for clusterized shards.
- Shatter. Smooth property in Advanced properties.
Allows to smooth fragments inner surface and avoid face splitting with vertex displacement shader.
- Shatter. Fragments inherit original object tag and layer.
- Shatter. Fragmentation fix for objects with 180 degree rotation over any axis.
- Shatter. Planar object fragmentation fix.
- Blade. Demolition Action Type fix.
- Bomb. At Start detonation property.
- Manager. Deactivate & Activate support.
- Manager. Fragments storage root. Contains all fragments and destroy all empty roots when fragments destroyed.
- How-to fixes.
[1.36]
- Unyielding. Simulation Type property. Allows to set Inactive or kinematic simulation type for overlapped objects.
- Unyielding. Overlap scale fix for scaled parents.
- Connectivity. Activation of last activatable unyielding shard fix.
- Rigid. Dampening property fix for Connected Cluster Demolition.
- Tutorials. Several new simple HowTo tutorials in RayFire/Info/HowTo folder.
[1.35]
- Rigid Root. Physics properties support.
- Rigid Root. Debris and Dust support.
- Rigid Root. Sound support.
- Rigid Root. Demolition properties.
Allows to set Rigid properties for Connected Clusters created during Connectivity simulation.
- Rigid Root. Deactivate & Activate support.
- Rigid Root. Setup Root method.
Perform all the most time consuming operations in Editor to avoid them in Awake.
- Rigid Root. Fade By Size property fix.
- Physics properties. New Solver Iterations count property.
- Connectivity. Demolishable Cluster created by Activation fix.
- Activator. Check Rigid and Check Rigid Root checkboxes.
- Rigid. Mass By Mass property fix for new fragments.
- Rigid. Object simulation fix on platforms with unsupported runtime demolition.
- Slicing fix for Mac platform.
- Tutorials. Several new simple HowTo tutorials with scenes in RayFire/Info/HowTo folder.
[1.34]
- Connectivity. New Stress feature. Allows to erode connections among Shards and demolish connected structures
based on their size, connection angle and gravity. Can be Initiated By Method, At Start or By Integrity.
- Connectivity. Start Collapse property. Allows to initiate collapse By Method, At Start or By Integrity.
- Connectivity. Stop Collapse button and Method.
- Rigid. New Inherit Materials property for Reference Demolition.
- RigidRoot. Fading support.
- RigidRoot. Gun shooting support.
- Gun. AffectRigidBodies property renamed to RigidBody. New Affect Rigid and RigidRoot checkboxes properties.
[1.33]
- Manager. Collision Detection property renamed to Mesh and works only for Mesh objects.
- Manager. New Collision Detection property Cluster for Clusters objects.
- Manager. Activation Parent property. Allows to define gameobject which will be a parent for all activated objects.
- Unyielding. Public method Activate() and Button for Connectivity and Connected Cluster.
Activates overlapped Unyielding fragments/shards if they are activatable.
- Unyielding. Removed Initialization property. Component should be added only to the root of simulated objects.
Now Unyielding component initialized only by Connectivity component and Rigid with Connected Cluster object type.
- Unyielding. Unyielding property. Set Unyielding property for overlapped children Shards/Rigid components.
- Unyielding. Activatable property. Set Activatable property for overlapped children Shards/Rigid components.
- Unyielding. Multiple layer support for children objects. Overlap optimization.
- Shatter. Disabled Decompose support for Slice fragmentation type.
- Shatter. Size filtering fix for Skinned Mesh fragmentation.
- Rigid. MeshRoot Reset support.
- Rigid and Connectivity. Magenta preview color for activatable unyielding Shards/Rigids.
- Debris and Dust. Light Probes property.
- Blade. Force apply fix for small and big fragments.
[1.32]
- Manager. Default collision detection type changed to Discrete. Other types cause unstable simulation for clusters.
- Rigid. Planar Check property in Physics. Do not add Mesh Collider to objects with planar low poly mesh.
- Rigid. Skinned Mesh demolition by Damage Apply.
- Shatter. Absolute and Relative Size filtering properties in Advanced Properties. Exclude small fragments.
- Shatter. Planar filtering property in Advanced Properties. Allows to exclude fragments with planar meshes.
Small and Planar fragments cause unstable simulation and in some cases PhysX unable to cook mesh collider convex hull for them.
- Shatter. Add and Remove Mesh Colliders to Last Fragments.
Allows to quickly test if generated fragments have any kind of topology problems with PhysX convex hull cooking engine.
- Shatter. Fix for parts of fragments meshes being inside another fragment mesh with decompose Off.
- Shatter. Missing inner faces fix with Slice on Mac platform.
- Manager. Collider Size property. Do not add Colliders to small objects with size less then this value.
- Blade. Slice with damage fix.
- Sound. Mesh Root copy fix.
[1.31]
- Dll. Slice Crash fix for Mac platform.
- Blade. Damage property. Allows to apply damage to sliced object and slice it only after maximum damage reached.
- Connectivity. Connections fix after exiting Play Mode.
- Shatter. Remove Inner Fragments fix.
- New static bool variable "silentMode" in static RFFragment class. True by default. Prevent warning messages in console.
- RigidRoot WIP. Activator and Connectivity components support.
[1.29]
- Dll. Slice Crash fix.
- Rigid. Reference Demolition fix for reference fragments with Rigid component and Add Rigid property On.
- Rigid. Activate and Fade methods support for Mesh Root Rigid. Initiates Activation and Fading for it's children fragments.
- Rigid. Gameobject Disabling/Enabling support.
- Rigid. Connected Cluster fix and warning for connection preview with deleted shard.
- Connectivity. Gameobject Disabling/Enabling support.
- Shatter. Default Seed value set to 0. Seed 0 allows to generate random point cloud everytime.
- Activator. Local Position List animation type.
- Activator. Tutorial scenes.
- Updated documentation and tooltips.
- New RayfireRigidRoot component. Work in Progress. Not finished.
[1.28]
- Updated documentation and tooltips.
- Rigid. Kinematic objects get mass.
- Rigid. New Mass By Rigid Body Component property. Allows to use mass of applied Rigid Body component.
- Rigid. Mesh Root doesn't overwrite child Rigid Properties if child already has Rigid component.
- Rigid. New Action dropdown property for Reference Demolition. Allows to Instantiate defined reference or use reference itself.
- Rigid. SetActive (bool state) method.
- Bomb. New Destroy property. Allows to automatically destroy game object with bomb after explosion.
- Unyielding. Initialization Fix.
[1.27]
- Updated documentation and tooltips.
- Manager. Interpolation property for simulated objects RigidBody component.
- Bomb. Connected Cluster explosion with demolition by Damage fix.
- Rigid. Amount Integrity info. Show current/initial amount of shards and cluster integrity in percentage. New Read Only AmountIntegrity property.
- Connectivity. Amount Integrity info. Show current/initial amount of shards and cluster damage in percentage. New Read Only AmountIntegrity property.
- Connectivity. Reset Shards button and method. Reset transform and Rigid components for Connectivity Shards. Does Not support clustered shards yet.
- Blade. Cooldown filter property. Allows to temporarily disable Blade component for defined time to prevent constant slicing.
- Blade. Slice of Inactive and Kinematic objects with Unyielding component to activate only one half.
- Blade. Force property. Allows to add to sliced fragments additional velocity impulse to separate them.
- Blade. Affect Inactive property for Force. Allows to apply force only to Activated half of sliced Inactive object.
- Unyielding. Collider overlap fix for scaled objects.
[1.26]
- Updated documentation and tooltips.
- Sound. Volume fix.
- Sound. Audio Mixer output group support for each sound event.
- Shatter Editor fix for custom point cloud on Linux platform.
[1.25]
- Rigid. Fix for demolition of objects with scaled parents.
- Rigid. Mesh root object type copies RayFire Shatter component to children.
- Rigid. Reference demolition scale fix.
- Rigid. Non Static simulation type and Static object warning.
- Rigid. Dust and Debris fix for duplicated Clusters.
- Rigid. Cluster demolition sound fix.
- Rigid. Empty Reference Demolition emits Debris and Dust particles.
- Rigid. Collision Detection Mode fix for demolished fragments.
- Shatter. Fix for fragmentation of objects with scaled parents.
- Shatter. Fix with inner and outer material.
- Connectivity. Missing shards check and warning.
- Recorder. Fix for key reducing.
- Bomb. Explosion with demolition fix.
- Bomb. Kinematic object Activation by Explosion fix.
- Gun. Demolition fix.
- Manager. Fragments parenting fix.
- Linux script compilation fix.
- FAQ.txt help file.
[1.24]
- New Rayfire Sound component.
Allows to play audio clips on Initialization, Activation, and Demolition.
- Shatter. Vertex Limitation in Advanced Properties.
Automatically shatter again fragments with the amount of vertices higher than defined value.
- Shatter. Export Meshes remember the last saved folder.
- Connectivity. Can be added in runtime. The default connectivity type changed to Bounding Box.
- Connected Cluster created in runtime inherits Layer and Tag from the original object.
- Rigid. Demolished Kinematic object fragments turn to Dynamic objects.
[1.23]
- Rigid. Removed Obsolete Manual Precache, Manual Prefab Precache and Manual Prefragment demolition types.
Replaced by Reference Demolition: Prefragment with Shatter -> Mesh Export -> Prefab -> Reference Demolition.
- Rigid. Static objects can be demolished by Method and by Demolish button.
- Rigid. New Inherit Scale property in Reference Demolition.
- Rigid. Fixed bug with Runtime Caching.
- Rigid. Fixed bug with Demolished source and generated Impact particles.
- Rigid. Fixed bug with Demolished object Reset and unstable simulation.
- Rigid. Fixed bug with Demolished object Reset and generated particles.
- Rigid. Fixed bug with Reset/Reused fragments and Maximum fragments amount.
- Rigid. Fixed Reference demolition bug.
- Shatter. Default Center position changed from Pivot point to Bounding center.
- Shatter. Fragment to Last button. Delete only last fragments and Keep root.
Then creates new fragments under this root.
- Connectivity. Fixed bug with deleting children in runtime.
[1.22]
- Rigid. Setup Cluster button. Allows to do all heavy calculations in Editor and store all cluster data in prefab.
Instantiated prefab will be ready for demolition without any additional calculations.
- Rigid. Significant Connected and Nested Cluster demolition speed increase.
Demolished disconnected clusters do not recalculate all cluster data from scratch, but use and update existing data.
- Rigid. Connectivity check with unyielding fragments for demolished Kinematic Connected Cluster.
- Rigid. Connected Cluster Collapse.
- Rigid. Connected Cluster Filtering properties.
- Blade. Connected Cluster Slicing support.
- Gun. Connected Cluster shooting and demolishing support.
- Gun. Support for Impact of simulated objects without Rigid component.
- Activator. Connected cluster activation support.
- Connectivity. Clustering of not connected inactive groups
- Shatter. Fragmentation of objects with overlapped Double faces fix.
- Unyielding. Movable gizmo center.
- Dust. Rotation over Lifetime property.
- Connectivity. Collapse support. Manual and by method.
- Manager. Collision detection property.
- Rigid. Connected and Nested cluster reset support.
- New Restriction component. Removed from Rigid component.
- Unyielding. Manual and by method initialization.
[1.21]
- Rigid. Improved Runtime Demolition. Objects with curved open edges should be demolished now.
- Rigid. Visibility check limitation. Object will be demolished only if it is visible to any camera including scene camera.
- Rigid. Cluster Colliders setup optimization. Allows to Set up Mesh Colliders in Editor, reference them to object meshes and save in Prefab.
- Manager. Particle system (Debris and Dust) pooling.
- Dust. Support for multiple Dust materials.
- Combine. Size and Vertex threshold filters.
- Combine. Particle System mesh combining. Starting from Unity 2018.2
- Combine. Export to Mesh asset button.
[1.20]
- Android support. Runtime Demolition support for Android platform.
- Debris and Dust. New UI.
- Debris and Dust. Multiple Debris and Dust components support.
- Rigid. Mesh Root type copies Debris and Dust components to it's children.
[1.19]
- IOS support. Runtime Demolition support for iOS platform.
- Rigid. Mesh Input property. Allows to Input Mesh for demolition At Start or At Initialization
instead of at fragments caching like before and significantly decrease runtime fragmentation time for mid/hi poly objects.
- Rigid. Connected Cluster Demolition bug fix.
- Rigid. Demolished object's Mesh Read/Write Enabled property check and warning.
- Shatter. Mesh export to Unity asset. Allows to export fragments meshes to Unity asset and reference to them.
- Gun. Impact properties. Affect Inactive objects checkbox property.
[1.18]
- Shatter. Debris feature in Cluster group. Prevents fragments fragments from getting inside cluster.
- Shatter. Gluing feature renamed to Clusters.
- Shatter. Decompose property fix for Editor mode.
- Shatter. Splinters and Slabs fix for objects with multiple elements.
- Shatter. Advanced. Editor mode Input Precap property. Create extra triangles to connect open edges and close mesh volume.
- Shatter. Advanced. Editor mode Output Precap property. Keep or Delete fragment's faces created by Input Precap.
- Shatter. Advanced. Editor mode Remove Double Faces property. Delete faces which overlap with each other.
- Shatter. Advanced. Editor mode Element Size Threshold property. Do not fragment elements of mesh with size less than this value.
[1.17]
- Mac OS X support. Editor Fragmentation and Runtime Demolition support for Mac OS X platform.
- Rigid. Runtime demolition freeze fix with positive Contact Bias and Remover Collinear On.
[1.16]
- Blade. Action type property. Allows to Slice or Demolish collided objects.
- Shatter. Custom fragmentation type. Allows to use Custom Point Cloud for fragmentation.
- Shatter. Auto rescale fix for very small objects.
- Shatter. Center move and rotation manipulation fix.
- Shatter. Fragments without material fix.
- Shatter. Decompose fragmentation type fix.
- Manager. Removed Infinite Fall check feature. Replaced by Restriction feature in Rigid component.
- Rigid. Restriction group. Restricts object's simulation area By Distance and/or By Trigger.
Allows to Destroy/Deactivate/Fade/Reset object if it left this area.
- Rigid. Local and Global Restriction event subscription support.
- Rigid. Public method .Fade() and "Fade" button in inspector - allows to initiate fading.
- Rigid. Initiate fading "On Activation" and/or "On Demolition" checkboxes.
- Rigid. New Fading Life Type "By Simulation And Life Time" property.
Allows to start fading after object stops simulation movement.
- Rigid. "Object about to fade..." and "Fading in progress..." info notifications in inspector.
- Rigid. Reset/reuse support for fading or faded object/fragments.
- Rigid. Reset of activated Inactive object fix.
- Rigid. Total fragment amount with Destroy fading type fix.
[1.15]
- Discord channel: https://discord.gg/8G98JKj
- Windows x86 build support.
- Shatter. Support for geometry with multiple UV maps.
- Rigid. Reset. Allows to reset object to it's original position and reset all properties.
- Rigid. Reuse. Allows to demolish Mesh Object again after Reset using cached meshes or fragments from first demolition.
- Rigid. Physics. Use Gravity checkbox.
- Rigid. Physics. Fragments Dampening property. Allows to adjust initial velocity of demolished fragments.
- Rigid. Damage. Collision Multiplier property.
- Rigid. Damage. Collect Collision property renamed to Collect.
- Rigid. Fading. Move Down Fading fix for Inactive fragments.
- Rigid. Connected Cluster demolition fix.
- Rigid. Create automatic collider if object already has collider but it is trigger.
- Rigid. Static objects do not get automatic Rigid Body component and can not be demolished.
- Rigid. Start operations moved in Awake.
- Manager. Removed global Post Demolition group of properties.
Now every Rigid component has it's own Post Demolition properties in Reset group.
[1.14]
- Shatter. "Get FBX Exporter" button. Open Free FBX Exporter package page at Asset Store.
- Rigid. Initialization property. By Method and At Start Initialization types. Default type set to By Method.
- Rigid. New Reference Demolition type. Allows to demolish Mesh or Cluster to referenced object: prefab, fbx asset, other scene object.
- Rigid. Mesh Demolition property in Cluster demolition group.
- Rigid. Prefab Precache demolition type renamed to Manual Prefab Precache.
- Rigid. MeshRoot object activation fix.Keep
- Rigid. Move Down fading fix for sleeping objects.
- Rigid. Rotation fix for copied objects with Manual Precache and Manual Prefab Precache demolition types.
- Rigid. Fix for cluster colliders scale and rotation.
- Rigid. Fix for cluster colliders physic material.
- Rigid. Removed By Collision activation type.
- Rigid. Activation By Damage fix.
- Debris and Dust fix.
- Common. All RayFire public components and classes were isolated in "RayFire" namespace.
[1.13]
- IMPORTANT! There are significant UI changes in Rigid component in build 1.13, some properties were relocated, some renamed.
Read following changelog carefully. You will need to fix your Rigid components in case you are going to upgrade from older builds.
Sorry for inconvenience but plugin is growing and this should have been done sooner or later.
- Full Windows 10 support. No need to copy tbb.dll into build folder.
- Unity 2018.1, 2018.2, 2018.3 support.
- Removed Tutorial scenes because of incompatibility with Unity 2018.1, 2018.2 and 2018.3 builds.
They will be recreated and returned in next build.
- Shatter. Unsafe mode checkbox removed. Replaced with dropdown with Runtime and Editor fragmentation modes.
Unsafe mode renamed to Editor mode. Safe mode renamed to Runtime mode.
- Shatter. Editor fragmentation mode. Fixed bug for Splinters and Slabs with low fragments amount.
- Shatter. Editor fragmentation mode. Exclude Inner fragments property.
Allows to remove all inner fragments and keep only fragments on the surface.
- Rigid. Physics. Collider type property. Provides Mesh, Box and Sphere colliders.
- Rigid. New Activation group. All activation properties were moved from Physics group to Activation group.
- Rigid. New Limitations group. All limitation properties were moved from Demolition group to Limitations group.
- Rigid. New Cluster Demolition group. All Cluster properties were moved from Demolition group to Cluster Demolition group.
- Rigid. Demolition group renamed to Mesh Demolition group.
- Rigid. New Advanced Properties group in Mesh Demolition properties.
- Rigid. Advanced Properties. Custom Layer string field. Allows to set custom Layer for fragments.
By default fragments get Layer from demolished object.
- Rigid. Advanced Properties. Collider Type property. Provides Mesh, Box and Sphere colliders.
- Rigid. Advanced Properties. Collider Size Filter type property.
Fragments will not get Collider if their size less than Size Filter value.
- Rigid. Interior group renamed to Materials.
- Rigid. Materials. Outer Material property. Allows to apply new material to fragments.
- Rigid. Remove Collinear property moved to Advanced Properties group.
- Rigid. Decompose property moved to Advanced Properties group.
- Rigid. Slice by Blade property moved to Limitation group.
- New RayFire Debris component. Debris Particle group moved to own component.
- New RayFire Dust component. Dust Particle group moved to own component.
[1.12]
- Connectivity. New Rayfire Connectivity component for Inactive & Kinematik objects activation.
Activates objects if they are not connected with Unyielding objects.
- Unyielding. New Rayfire Unyielding component. Sets objects as Unyielding by it's gizmo.
- Rigid. By Connectivity activation type.
- Rigid. By Damage activation type.
- Rigid. Unyielding property.
- Rigid. Mass By property. Allows to choose between two methods: By Material Density and By Mass property.
- Rigid. Mass property. Allows to set exact mass for object in case Mass By set to By Mass property.
- Manager. Minimum Mass property. Defines minimum mass for simulated rigid bodies.
- Manager. Maximum Mass property. Defines maximum mass for simulated rigid bodies.
- Shatter. Unsafe fragmentation mode fixes for objects with open edges.
[1.11]
- Rigid. Fixed bug with Demolition of Connected cluster.
[1.10]
- Fixed bugs for iOS and Android builds.
[1.09]
- Shatter. Unsafe mode fix for small objects.
- Shatter. Unsafe mode fix for Splinters and Slab fragmentation types.
[1.08]
- Shatter. Unsafe mode for complex multi element hi poly objects fragmenting. Use it if Safe mode shows "Bad Mesh" errors.
- Shatter. Remove Collinear toggle. Removes collinear vertices and decrease amount of unnecessary triangles.
- Rigid. Remove Collinear toggle.
- Bomb. Kinematik object explosion bug fix.
[1.07]
- Recorder. New Rayfire Recorder component. Record dynamic simulation into animation clip,
Play as animation in Runtime as Kinematik objects with ability to return back to simulation as Dynamic objects.
- Snapshot. New Rayfire Snapshot component. Save demolished/simulated objects in Runtime,
Load in Edit mode in scene for environment modeling purposes.
- Rigid. Compress Mesh data property for Prefab Precache demolition type. Decrease Prefab size twice.
- Fixed bug. Prefab Precache demolition type.
- Fixed bug. Prefab Precache submesh count.
[1.06]
- Combine. New Rayfire Combine component. Combines meshes into single mesh. Supports Multi-Material and SkinnedMesh objects.
- Rigid. Runtime caching. Allows to cache fragment's meshes over multiple frames to prevent FPS drop in case of high amount of fragments or hipoly mesh.
- Rigid. New SkinnedMesh Object type. Support for runtime demolition and editor slicing of SkinnedMesh objects.
- Rigid. Removed Exclude Object type.
- Rigid. Demolition type Precached was renamed to Awake Precache. Precache fragment's meshes in awake.
- Rigid. New Demolition type Manual Precache. Allows to demolish objects to manually precached fragments.
- Rigid. Demolition type Prefragmented was renamed to Awake Prefragment. Prefragment object in awake.
- Rigid. New Demolition type Manual Prefragment. Allows to demolish objects to manually prefragmented objects.
- Rigid. Helpful console messages. Will notify if you have wrong setup.
- Manager. Drag and Angular Drag properties in Material Preset.
- Fixed bug. Fragmentation of objects with normal map.
- Fixed bug. Fragmentation of objects with several materials and negative scale.
- Fixed bug. Manual Prefragment creates Manager (if it is not created) and setup physics accordingly to Material Presets.
- Fixed bug. Manager / Advanced demolition properties / Shadow Casting size threshold property now work correctly.
[1.05]
- Common. DotNET 3.5 support.
- Shatter. Multi-material object fragmentation. IMPORTANT: All manually precached objects should be precached manually again.
- Shatter. SkinnedMesh fragmentation support.
- Manager. Material Presets. Customizable material density, solidity, friction and bounciness.
- Rigid. Destructible state check. Demolish only objects with Destructible material. Can be changed in RayfireMan material presets.
- Rigid. Tooltips for properties.
[1.04]
- Rigid. Removed Explode by Bomb property.
- Fixed bug. Kinematik object activation.
- Fixed bug. Demolition of prefab with Precache demolition type.
- Fixed bug. Demolition Destroy fading type.
- Activator. Activator can activate Kinematik objects.
- Shatter. Repair property.
[1.03]
- Fixed bug. Platform dependent compilation. Runtime fragmentation will be evaluated now only on Win, OS X, Linux, PS4 and XboxOne platforms,
for other platforms you need to precache fragment's meshes or prefragment objects manually in Editor.
- Manager. Time Quota property. Maximum time in milliseconds per frame allowed to be used for demolitions.
- Shatter. Decompose fragmentation type.
[1.02]
- Updated documentation.
- Tutorial scenes.
- Rigid. Demolition Decompose property
- Rigid. Demolition event support, local and global.
- Rigid. Activation event support, local and global.
- Blade. Slice event support, local and global.
- Bomb. Explosion event support, local and global.
- Gun. Shot event support, local and global.
- Manager. Post demolition. Destroy/Deactivate property.
- Manager. Post demolition. Destroy delay property.
[1.01]
- Updated documentation.
- Shatter. Slices fragmentation type.
- Shatter. Decompose property.
- Shatter. Gluing properties.
[0.92]
- Updated documentation.
- Online Help references. Every component has link (Book icon on top) to online help page.
- RayFire category with all components in Add Component Menu.
- Manager. New MonoBehaviour script.
- Manager. Object pooling for fragments.
- Manager. Optional gravity multiplier.
- Manager. Global Infinite Fall check.
- Manager. Global Maximum Fragments Amount limitation.
- Manager. Global Solidity property.
- Rigid. UI change.
- Rigid. Removed local Infinite Fall check.
- Rigid. Removed local Maximum Fragments Amount limitation.
- Rigid. New object type - Mesh Root.
- Rigid. New object type - Connected Cluster.
- Rigid. Cluster object type renamed to Nested Cluster.
- Rigid. Safe seconds variation, hardcoded, in random range from 0 to 2 seconds.
- Bomb. Audio support.

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: dce9e2733478bbc4ab68c5769c93ee74
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@ -0,0 +1,213 @@
{\rtf1\ansi\ansicpg1252\deff0{\fonttbl{\f0\fnil\fcharset0 Calibri;}{\f1\fnil Consolas;}{\f2\fnil\fcharset2 Symbol;}}
{\colortbl ;\red0\green0\blue255;\red0\green0\blue0;}
{\*\generator Msftedit 5.41.21.2510;}\viewkind4\uc1\pard\sl276\slmult1\qc\lang9\ul\b\f0\fs56 RayFire for Unity 1.15\par
Documentation \fs48\par
\pard\ri-22\sl276\slmult1\tx8662\tx8946\ulnone\b0\fs28\par
\pard\sl276\slmult1\ul\b\fs36\par
RayFire Cluster component\par
\lang1033\ulnone\b0\fs22\par
Clusters component can be used to create parent/child hierarchy in Editor mode which can be used for demolition in Play mode. Also clusters allows to simulate dynamic concave objects which is impossible to do for now (2018.3) in Unity with regular rigid bodies.\par
\par
\fs28\tab Properties group\lang9\b\fs22\par
\lang1033\b0\par
\lang9\b Type\lang1033\b0 : Defines clustering algorithm.\par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-360\li720\sl276\slmult1 By Point Cloud: Creates random Vector3 point cloud inside bounding box of all children meshes, and then create clusters based on this point cloud, every child sticks to closest point. This type allows to gather into one cluster objects with meshes which are not connected with each other.\par
{\pntext\f2\'B7\tab}By Shared Area: Creates clusters starting from biggest, not clustered yet mesh and then start add neighbour mesh with biggest shared area, then do it again. This type is good for objects just fragmented using Shatter component. In this way clusters looks more natural.\par
\pard\sl276\slmult1\par
\b Depth\b0 : Defines how deep will go clustering. \par
\b Seed\b0 : Random seed for all random values. \par
\b Smooth Pass\b0 : Higher value smooth clusters and let them switch some fragments among each other to make border between clusters smoother.\par
\par
\fs28\tab By Point Cloud group\lang9\b\fs22\par
\lang1033\b0\par
\b Base Amount\b0 : Maximum amount child clusters. \par
\b Depth Amount\b0 : Amount of shards in child clusters. \par
\par
\lang9\b Connectivity\b0 : \lang1033 Defines Connectivity algorithm for shards. \par
\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-360\li720\sl276\slmult1\b By Bounding Box\b0 : Fast but not accurate. Check for connectivity using shard's bound boxes. Can be used with any kind of objects.\par
\b{\pntext\f2\'B7\tab}By Mesh\b0 : Slow but accurate. Check for connectivity using shard's mesh. Can be used only with fragments which shares same triangles (Voronoi, Slabs, Splinters and Radial fragmentation types).\par
\pard\sl276\slmult1\par
\fs28\tab By Shared Area group\lang9\b\fs22\par
\lang1033\b0\par
\b Minimum Amount\b0 : Minimum amount of shards in cluster. \par
\b Maximum Amount\b0 : Maximum amount of shards in cluster. \par
\par
\lang9\fs28\par
\ul\b\fs36\par
RayFire Gun component\par
\lang1033\ulnone\b0\fs22\par
\lang9\b\fs32{\field{\*\fldinst{HYPERLINK "https://www.youtube.com/watch?v=UstoNAaVav4"}}{\fldrslt{\ul\cf1 https://www.youtube.com/watch?v=UstoNAaVav4}}}\lang1033\b0\f0\fs22\par
\par
Using Gun component you can shoot objects, demolish them at Impact point, create Impact Flash, Particle Debris and Dust, dynamically push them and activate.\par
\par
Single shot can be initiated by public method:\par
\cf1\f1\fs19 public\cf2 \cf1 void\cf2 Shoot()\cf0\f0\fs22\par
\par
\lang9\fs28\tab Properties group\b\fs32\par
\fs22\par
Axis\lang1033\b0 : Defines local shooting axis of object with Gun component, in case Target is not defined.\par
\par
\lang9\b Max Distance\lang1033\b0 : Maximum distance to shoot.\par
\par
\lang9\b Target\lang1033\b0 : Transform component which will be used as target.\par
\par
\lang9\fs28\tab Burst group\b\fs32\par
\fs22\par
Rounds\lang1033\b0 : Amount of shots during single burst.\par
\par
\lang9\b Rate\lang1033\b0 : Defines delay in seconds until next shot.\par
\par
\lang9\fs28\tab Impact group\b\fs32\par
\fs22\par
Strength\lang1033\b0 : Defines strength of physical push which will get Impact target.\par
\par
\lang9\b Radius\lang1033\b0 : Defines radius in units around Impact point. Turned off when 0, in this case only Impact target will be pushed.\par
\par
\lang9\fs28\tab Damage group\b\fs32\par
\fs22\par
Damage\lang1033\b0 : Defines damage value which will be applied to object with Rigid component.\par
\par
\lang9\fs28\tab Impact particles group\b\fs32\par
\fs22\par
Debris\lang1033\b0 : Create particle debris in case of shot in object with Rigid component. Rigid component has to have Debris\\On Impact property enabled.\par
\par
\lang9\b Dust\lang1033\b0 : Create particle dust in case of shot in object with Rigid component. Rigid component has to have Dust\\On Impact property enabled.\par
\par
\lang9\fs28\tab Impact flash group\b\fs32\par
\fs22\par
Enable Impact Flash\lang1033\b0 : Create object with Light component for a moment at Impact point.\par
\par
\lang9\b Flash Strength\lang1033\b0 : Defines Light's intensity.\par
\par
\lang9\b Flash Range\lang1033\b0 : Defines Light's range.\par
\par
\lang9\b Flash Distance\lang1033\b0 : Defines offset in units from Impact point.\par
\par
\lang9\b Flash Color\lang1033\b0 : Defines Light's color.\par
\par
\lang9\fs28\tab Filters group\b\fs32\par
\fs22\par
Tag\lang1033\b0 : Gun will shoot only objects with picked Tag. You can pick only one Tag.\par
\b\par
Layer\b0 : Gun will shoot only objects with defined layer. You can define several Layers.\par
\par
\par
\lang9\fs28 ===========================================================\par
\par
\ul\b\fs36 RayFire Wind component\par
\ulnone\fs32\par
\tab\b0\fs28 Gizmo group\lang1033\fs22\par
\b\par
Gizmo Size\b0 : Defines size of Wind Gizmo. Wind force can be applied to dynamic objects only inside gizmo.\par
\par
\lang9\b\fs32\tab\b0\fs28 Noise group\lang1033\fs22\par
\lang9\b\par
Global Scale\lang1033\b0 : Defines Global Noise scale. The higher Global Scale make wind more chaotic and dense.\par
\b\par
Length Scale\b0 : Defines Noise scale over Z (Wind direction) axis.\par
\b\par
Width Scale\b0 : Defines Noise scale over X axis.\par
\b\par
Speed\b0 : Defines speed of noise offset over Z (Wind direction) axis.\par
\par
\lang9\b\fs32\tab\b0\fs28 Strength group\b\fs32\par
\fs22\par
Minimum\lang1033\b0 : Minimum strength applied to dynamic object at position where noise strength is 0.\par
\b\par
Maximum\b0 : Maximum strength applied to dynamic object at position where noise strength 1.\par
\b\par
Torque\b0 : Defines rolling torque strength for dynamic objects.\par
\b\par
Force By Mass\b0 : Applies Wind strength to object by their mass.\par
\par
\lang9\b\fs32\tab\b0\fs28 Direction group\b\fs32\par
\fs22\par
Divirgency\lang1033\b0 : Defines angle spread for wind direction\par
\b\par
Turbulence\b0 : Defines how quickly \b Divergency \b0 is changing.\par
\par
\lang9\b\fs32\tab\b0\fs28 Preview group\lang1033\fs22\par
\b\par
Preview Density\b0 : Defines amount of Strength and Direction preview helpers.\par
\b\par
Preview Size\b0 : Defines size of Strength and Direction preview helpers.\par
\par
\par
\lang9\fs28\tab Filters group\b\fs32\par
\fs22\par
Tag\lang1033\b0 : Wind will affect only objects with picked Tag. You can pick only one Tag.\par
\b\par
Layer\b0 : Wind will affect only objects with defined layer. You can define several Layers.\par
\lang9\b\fs32\tab\lang1033\b0\fs22\par
\lang9\fs28\par
===========================================================\par
\par
\ul\b\fs36 RayFire Vortex component\par
\ulnone\fs32\par
\tab\b0\fs28 Anchor points group\lang1033\fs22\par
\b\par
Top Anchor\b0 : Position of Top anchor point.\par
\b Bottom Anchor\b0 : Position of Bottom anchor point.\par
\lang9\b\fs32\par
\tab\b0\fs28 Gizmo group\par
\lang1033\fs22\par
\b Top Radius\b0 : Radius in Units for Top anchor.\par
\b Bottom Radius\b0 : Radius in Units for Bottom anchor.\par
\par
\lang9\fs28\tab Eye group\lang1033\b\par
\fs22\par
Eye\b0 : Size of inner eye hole in percents to radius.\par
\lang9\fs28\par
\b\fs32\tab\b0\fs28 Strength group\par
\lang1033\fs22\par
\b Force By Mass\b0 : Applies Swirl strength by object's mass.\par
\b Stiffness\b0 : Defines how hard object will try to reach it's local position inside Vortex.\par
\b Swirl Strength\b0 : Defines swirl animation speed.\par
\par
\lang9\b\fs32\tab\b0\fs28 Torque group\lang1033\par
\b\fs22\par
Enable Torque\b0 : Enables object spinning around it's center of mass. \par
\b Torque Strength\b0 : Defines spinning speed.\par
\b Torque Variation\b0 : Defines \b Torque Strength \b0 variation.\par
\par
\lang9\b\fs32\tab\b0\fs28 Height bias group\lang1033\par
\b\fs22\par
Enable height Bias\b0 Enables object height animation inside Vortex.\par
\b Bias Speed\b0 : Defines height animation speed.\par
\b Bias Spread\b0 : Defines how far object will be animated from it's default position.\par
\lang9\fs28\par
\b\fs32\tab\b0\fs28 Seed group\lang1033\par
\b\fs22\par
Seed\b0 : Random seed for all random values. Affects on object's position in vortex, Swirl and Torque strength, etc.\lang9\fs28\par
\par
\b\fs32\tab\b0\fs28 Preview group\lang1033\fs22\par
\par
\b Circles\b0 : Defines amount of gizmo preview circles for Vortex\par
\par
\lang9\fs28\tab Filters group\b\fs32\par
\fs22\par
Tag\lang1033\b0 : Vortex will affect only objects with picked Tag. You can pick only one Tag.\par
\b\par
Layer\b0 : Vortex will affect only objects with defined layer. You can define several Layers.\par
\lang9\fs28\par
===========================================================\par
\ul\b\fs36\par
RayFire Snapshot component\par
\par
\ulnone\fs32{\field{\*\fldinst{HYPERLINK "https://www.youtube.com/watch?v=MDMwzzLndXQ"}}{\fldrslt{\ul\cf1 https://www.youtube.com/watch?v=MDMwzzLndXQ}}}\ul\f0\fs36\par
\ulnone\fs32\par
\tab\b0\fs28 Save properties group\lang1033\fs22\par
\b\par
Asset name\b0 : Asset file name.\par
\par
\b Compress\b0 : Reduce asset size twice when On.\par
\par
\lang9\fs28\tab Load properties group\lang1033\fs22\par
\b\par
Snapshot Asset\b0 : Asset file which will be loaded.\par
\par
\b Size filter\b0 : Size filter to exclude loaded objects by size.\par
\par
\lang9\b\fs52\par
}

View File

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

View File

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

View File

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

View File

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

View File

@ -0,0 +1,129 @@
{\rtf1\ansi\ansicpg1252\deff0\nouicompat{\fonttbl{\f0\fswiss\fcharset0 Calibri;}{\f1\fnil\fcharset2 Symbol;}{\f2\fmodern\fprq1\fcharset204 Consolas;}{\f3\fmodern\fprq1\fcharset0 Consolas;}}
{\colortbl ;\red0\green0\blue255;\red120\green157\blue235;\red189\green189\blue189;\red0\green176\blue80;\red240\green240\blue240;\red208\green208\blue208;}
{\*\generator Riched20 10.0.19041}\viewkind4\uc1
\pard\nowidctlpar\sl276\slmult1\qc\ul\b\f0\fs52\lang9 RayFire Connectivity\ulnone\b0\fs24\lang1033\par
\pard\nowidctlpar\sl276\slmult1\par
\fs22\lang9 RayFire Connectivity manages connection among separate objects with Rigid component and activates them. Connectivity component also suupports RigidRoot component. Using Connectivity you can break complex structures at their bottom and top will be activated and fall down automatically.\fs24\lang1033 \fs22\lang9 Also Connectivity can clusterize top group of objects so they will be simulated as one Connected Cluster.\fs24\lang1033\par
\par
\b\fs22\lang9 Rigid component requirements\b0 : \lang1033 Connectivity will consider child object with Rigid component as it's Shard only if Rigid component fits it's requirements.\fs24\par
\f1\'b7 \tab\b\f0\fs22 Inactive or Kinematic simulation type\b0 : \lang9 Objects with Rigid component should have simulation type set to Inactive or Kinematik, only these simulation types possible to Activate which means turn to Dynamic objects affected by Gravity. \fs24\lang1033\par
\f1\'b7\tab\b\f0\fs22 Mesh object type\b0 : Connectivity needs Rigid component to be single object with Mesh.\fs24\par
\f1\'b7\tab\b\f0\fs22 By Connectivity activation\b0 : By Connectivity property in Activation properties should be Enabled.\fs24\par
\f1\'b7\tab\b\f0\fs22 Unyielding Shard: \b0\fs24 At lease one child Rigid should have Enabled \b Unyielding \b0 property in Activation properties. Every shard in Connectivity structure will check for connection with at least one Unyielding shard and will be activated if there is no such connection. You can add Unyielding component on the same root with Connectivity component to define one or several groups of Unyielding Shards by it's gizmo. It will enable Unyielding property in Activation properties.\par
\par
{\b\fs32\lang9{\field{\*\fldinst{HYPERLINK https://youtu.be/WeKrhsZyXsE }}{\fldrslt{https://youtu.be/WeKrhsZyXsE\ul0\cf0}}}}\f0\fs24\tab\par
\b\fs48\lang9\tab\b0\fs24\lang1033\par
\b\fs48\lang9\tab Cluster\b0\fs24\lang1033\par
\par
\b\fs22 Show Gizmo toggle\b0 : Toggle preview of bounding box gizmo which cover all Shards in Connectivity cluster.\fs24\par
\par
\b\fs22 Show Connections toggle\b0 : Toggle preview of all connections among Shards. Every shard will show a line from it's center to center of connected Shard.\fs24\par
\par
\b\fs22 Show Nodes toggle\b0 : Toggle preview of all Shards. Every shard will show a sphere at it's center.\fs24\par
\b\fs48\lang9\tab\b0\fs24\lang1033\par
\b\fs48\lang9\tab Connectivity\b0\fs24\lang1033\par
\par
\b\fs22\lang9 Type\b0 : \lang1033 Define the the way connections among Shards will be calculated. \fs24\par
\f1\'b7\tab\b\f0\fs22 By Bounding Box\b0 : Shards will be considered as connected if their bound boxes interpenetrates with each other. This is the fastest way to establish connectivity and can be used in Runtime, but calculated shared are value will not be precise and will be based on shard's size.\fs24\par
\f1\'b7\tab\b\f0\fs22 By Mesh\b0 : Shards will be considered as connected if triangle of one Shard fits triangle of neighbor shard. This is the slowest way to establish connectivity and should be used only in Editor with Setup Cluster button, but it precisely calculates shared area value which provides realistic Collapse By Area.\fs24\par
\f1\'b7\tab\b\f0\fs22 By Bounding Box and Mesh\b0 : Shards will be considered as connected if their bound boxes interpenetrates with each other. If Shards also share triangles then Shared area will be calculated using By Mesh method, if shards do not share triangles then By Bounding Box method will be used.\fs24\par
\b\fs22\lang9\par
Expand\b0 : \lang1033 Allows to add extra size for objects bounding box in case their bounding boxes too small to establish connection between each other.\fs24\par
\b\fs48\lang9\tab\b0\fs24\lang1033\par
\b\fs48\lang9\tab Filters\b0\fs24\lang1033\par
\fs22 Filters allows you to decrease amount of connections. There are three filters and they are turned off by default.\fs24\par
\par
\b\fs22 Minimum Area\b0 : Two shards will have connection if their shared area is bigger than this value.\fs24\par
\par
\b\fs22 Minimum Size\b0 : Two shards will have connection if their size is bigger than this value.\fs24\par
\par
\b\fs22 Percentage\b0 : Random percentage of connections will be discarded.\fs24\par
\par
\b\fs22 Seed\b0 : Seed for random percentage filter and for Random Collapse.\fs24\par
\par
\b\fs28\lang9\tab\b0\fs24\lang1033\par
\b\fs48\lang9\tab Cluster Properties\b0\fs24\lang1033\par
\par
\b\fs22 Clusterize\b0 : All activated group of Shards which are not connected through other shards with any Unyielding Shard but connected with each other will be moved under one empty root parent which will get Connected Cluster Rigid component and whole group will be simulated as one object. Rigid component will inherit Connected Cluster properties from first Shard's Connected Cluster properties except Demolition Type property which depends on \b Demolishable \b0 property.\fs24\par
\par
\b\fs22 Demolishable\b0 : If Clusterize is On, Set Demolition type to Runtime for Connected Clusters created during activation. Otherwise it will be set to None.\fs24\par
\par
\b\fs28\lang9\tab\b0\fs24\lang1033\par
\b\fs48\lang9\tab Collapse\b0\fs24\lang1033\par
\fs22 Collapse allows you start break connections among shards and activate single Shards or Group of Shards if they are not connected with any of Unyielding Shard. \lang9 It is a good idea to use Collapse with other activation types like By Offset, in this case shards which were activated by Collpase will fall down and move still Inactive shards and activate them as well and at some point whole collapse will start look like a chain reaction.\fs24\lang1033\par
\par
{\b\fs32\lang9{\field{\*\fldinst{HYPERLINK https://youtu.be/_-L_INZ_QZg }}{\fldrslt{https://youtu.be/_-L_INZ_QZg\ul0\cf0}}}}\f0\fs24\par
\par
\fs22 There are two ways to initiate collapse: \fs24\par
\f1\'b7\tab\b\f0\fs22 Set Collapse threshold values manually or using public methods\b0 : \par
\tab You can break connections by manually setting \b By Area\b0 , \b By Size\b0 and \b Random \b0 threshold values. You can set these thresholds using \b Collapse Sliders \b0 on top of component UI or using public static Methods. You can set all three of them together depends on which one works better for you. For instance, if you set By Size value to 0.5, all shards with size less than 0.5 units will loose their connections. \par
\fs24\par
\f1\'b7\tab\b\f0\fs22 Start Collapse using Collapse properties\b0 : \par
\tab If you don't want to directly set exact threshold values you can automate this process using Collapse group of properties which allows you to define collapse type and speed. There are three ways to Start Collapse, you can choose one using Start Collapse dropdown property:\par
\pard
{\pntext\f0 1.\tab}{\*\pn\pnlvlbody\pnf0\pnindent0\pnstart1\pndec{\pntxta.}}
\nowidctlpar\fi-360\li720\sl276\slmult1\b\fs24 At Start\b0 : Collapse will be initiated at Connectivity's component Start.\par
{\pntext\f0 2.\tab}\b\fs22 By Method\b0 : You can start Collapse using \b Start Collapse \b0 button on top of components UI or using public static method (more info at the bottom).\fs24\par
{\pntext\f0 3.\tab}\b By Integrity\b0 : Collapse will be started when Connectivity structure Integrity will be lower than \b Collapse By Integrity \b0 property value.\par
\pard\nowidctlpar\sl276\slmult1\par
\par
\b\fs48\lang9\tab User Interface\b0\fs24\lang1033\par
In \b Connectivity \b0 component you may see Collapse UI on top of the component and at the bottom. \par
\tab At the top you can manually set collapse threshold values in Runtime to initiate collapse. \b By Area\b0 and \b By Size \b0 values represented as float units and \b Random \b0 values represented as integer. When you setup cluster all three sliders will be set to value 0 so you will be able to increase them and break connections. \b By Area\b0 and \b By Size \b0 sliders will be capped by biggest shared area and biggest shard size accordingly, \b Random \b0 slider will be capped by value 100 since it is measured in percentage.\par
\tab\par
\tab At the bottom you can setup collapse properties for \b Start Collapse \b0 button/method. \par
\b\fs22\lang9 Type\b0 : \lang1033 There are three ways to break connections among Shards. You should try in Editor all of them to find the one which looks better for your structure and your goal. \fs24\par
\f1\'b7\tab\b\f0\fs22 By Area\b0 : Shard will loose it's connections if it's shared area surface is less then defined value.\fs24\par
\f1\'b7\tab\b\f0\fs22 By Size\b0 : Shard will loose it's connections if it's Size is less then defined value.\fs24\par
\f1\'b7\tab\b\f0\fs22 Random\b0 : Shard will loose it's connections if it's random value in range from 0 to 100 is less then defined value.\fs24\par
\par
\b\fs22 Start\b0 : Defines start value in percentage relative to whole range of picked type. For instance, Type set to By Size, you have 200 shards with the smallest shard size equal to 0.1 unit and biggest shard size equal to 50 units. If you set \b Start \b0 value to 50% it will start collapse by setting By Size threshold value to 25 units and all shards with size less than 25 units will loose their connections. Increase this value if you want to Start Collapse quickly so a lot of shards will loose connections and will be activated right from the beginning. Set it to 0 if you want to start collapse slowly activating shards one by one.\fs24\par
\par
\b\fs22 End\b0 : Defines end value in percentage relative to whole range of picked type. Set tp 100 if you want to break all connections or set it lower if you want to keep some connections.\fs24\par
\par
\b\fs22 Steps\b0 : Amount of times when defined threshold value will be set during \b Duration \b0 period. \fs24\par
\par
\b\fs22 Duration\b0 : Time which it will take \b Start \b0 value to be increased to \b End \b0 value\b\lang9 .\b0\fs24\lang1033\par
\par
\par
\b\fs48\lang9\tab Methods\b0\fs24\lang1033\par
\fs22 You can initiate collapse using several public static methods implemented in RFCollapse class. \fs24\par
\par
\fs22 By Area collapse methods:\fs24\par
\pard\box\brdrs\brdrw0 \nowidctlpar\sl276\slmult1\cf2\b\f2\fs18\lang1049 public static void \cf0 AreaCollapse \cf3\b0 (\cf0 RayfireConnectivity \cf4\f3\lang1033 scr\cf3\f2\lang1049 , \cf2\b int \cf4\b0 areaPercentage\cf3 )\f3\lang1033 ;\cf0\f0\fs24\par
\cf2\b\f2\fs18\lang1049 public static void \cf0 AreaCollapse \cf3\b0 (\cf0 RayfireConnectivity \cf4\f3\lang1033 scr\cf3\f2\lang1049 , \cf2\b float \cf4\b0 areaValue\cf3 )\f3\lang1033 ;\cf0\f0\fs24\par
\par
\pard\nowidctlpar\sl276\slmult1\fs22 By Size collapse methods:\fs24\par
\pard\box\brdrs\brdrw0 \nowidctlpar\sl276\slmult1\cf2\b\f2\fs18\lang1049 public static void \cf0 SizeCollapse \cf5\b0 (\cf0 RayfireConnectivity \cf4\b\f3\lang1033 scr\cf3\b0\f2\lang1049 , \cf2\b int \cf4 sizePercentage\cf5\b0 )\f3\lang1033 ;\cf0\f0\fs24\par
\cf2\b\f2\fs18\lang1049 public static void \cf0 SizeCollapse \cf3\b0 (\cf0 RayfireConnectivity \cf4\f3\lang1033 scr\cf3\f2\lang1049 , \cf2\b float \cf4\b0 sizeValue\cf3 )\f3\lang1033 ;\cf0\f0\fs24\par
\par
\fs22 Random collapse method:\fs24\par
\cf2\b\f2\fs18\lang1049 public static void \cf0 RandomCollapse \cf3\b0 (\cf0 RayfireConnectivity \cf4\f3\lang1033 scr\cf3\f2\lang1049 , \cf2\b int \cf4\b0\f3\lang1033 p\f2\lang1049 ercentage\cf3 , \cf2\b int \cf4\b0 seed\cf3 )\f3\lang1033 ;\cf0\f0\fs24\par
\par
\fs22 Start Collapse method:\fs24\par
\cf2\b\f2\fs18\lang1049 public static void \cf0 StartCollapse\cf3\b0 (\cf0\b RayfireConnectivity \cf4\b0 scr\cf3 )\f3\lang1033 ;\cf0\f0\fs24\par
\pard\nowidctlpar\sl276\slmult1\par
Example:\par
\pard\box\brdrs\brdrw0 \nowidctlpar\sl276\slmult1\cf6\fs18\line\cf0\b\f2\lang1049 GameObject obj = GameObject.Find ("ConnectivityObject");\line RayfireConnectivity scr = obj.GetComponent<RayfireConnectivity>();\line\b0\f0\fs24\lang1033\par
\b\f2\fs18\lang1049 RFCollapse.AreaCollapse (scr, 0.5f);\b0\f0\fs24\lang1033\par
\b\f3\fs18 or\b0\f0\fs24\par
\pard\nowidctlpar\sl276\slmult1\b\f2\fs18\lang1049 RFCollapse.StartCollapse(scr);\b0\f0\fs24\lang1033\par
\par
\par
\par
\b\fs48\lang9 Shooting tutorial\b0\fs24\lang1033\par
{\b\fs48\lang9{\field{\*\fldinst{HYPERLINK https://youtu.be/1DjkINDRL9I }}{\fldrslt{https://youtu.be/1DjkINDRL9I\ul0\cf0}}}}\f0\fs24\par
\par
\b\fs48\lang9 Activator tutorial\b0\fs24\lang1033\par
{\b\fs48\lang9{\field{\*\fldinst{HYPERLINK https://youtu.be/MeIQpwY6glc }}{\fldrslt{https://youtu.be/MeIQpwY6glc\ul0\cf0}}}}\f0\fs24\par
}

View File

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

View File

@ -0,0 +1,169 @@
{\rtf1\ansi\ansicpg1252\deff0{\fonttbl{\f0\fswiss\fcharset0 Calibri;}{\f1\fnil\fcharset2 Symbol;}}
{\colortbl ;\red0\green0\blue255;}
{\*\generator Msftedit 5.41.21.2510;}\viewkind4\uc1\pard\nowidctlpar\sl276\slmult1\qc\lang9\ul\b\f0\fs52 RayFire Debris\lang1033\ulnone\b0\fs24\par
\pard\nowidctlpar\sl276\slmult1\par
\lang9\fs22 RayFire Debris component creates debris using native Unity particle system and predefined debris reference. You can create debris on object \b Demolition\b0 , \b Activation \b0 and on gun shooting \b Impact. \b0 Debris component should be used only as addition to Rigid component. If Rigid component Object type set to Mesh Root it will copy Debris component to every child as well.\lang1033\fs24\par
\lang9\fs28\tab\lang1033\fs24\par
\lang9\b\fs48\tab Emit Debris\lang1033\b0\fs24\par
\lang9\b\fs32{\field{\*\fldinst{HYPERLINK "https://youtu.be/kIsH_1TTcdU"}}{\fldrslt{\ul\cf1 https://youtu.be/kIsH_1TTcdU}}}\lang1033\b0\f0\fs24\par
\par
\lang9\b\fs22 On Demolition\lang1033\b0 : Demolished object fragments will emit debris.\fs24\par
\par
\lang9\b\fs22 On Activation\lang1033\b0 : Activated object will emit debris.\fs24\par
\par
\lang9\b\fs22 On Impact\lang1033\b0 : Object will emit debris at the psotion when it was shot by RayFire Gun component.\fs24\par
\par
\par
\lang9\b\fs48\tab Main\lang1033\b0\fs24\par
\lang9\b\fs32{\field{\*\fldinst{HYPERLINK "https://youtu.be/mvCf5YLed-w"}}{\fldrslt{\ul\cf1 https://youtu.be/mvCf5YLed-w}}}\lang1033\b0\f0\fs24\par
\lang9\b\fs48\tab\lang1033\b0\fs24\par
\lang9\b\fs22 Debris Reference\lang1033\b0 : Object which will provide it's MeshFilter's mesh and Material as debris reference. You can define as Debris Reference empty root with several gameobjects and for every Debris particle system will be picked random gameobject as debris reference.\fs24\par
\par
\lang9\b\fs22 Debris Material\lang1033\b0 : By default it will apply Debris reference material but you can override this material by manually defining Debris Material using this field.\fs24\par
\par
\lang9\b\fs22 Emission Material\lang1033\b0 : By default particle system will emit debris over whole object surface. You can define specific surface to emit debris using this Emission material field.\fs24\par
\par
\lang9\b\fs48\tab Properties\lang1033\b0\fs24\par
\par
\lang9\fs44\tab Emission\lang1033\fs24\par
\lang9\b\fs32{\field{\*\fldinst{HYPERLINK "https://youtu.be/kCEP-UxM6IM"}}{\fldrslt{\ul\cf1 https://youtu.be/kCEP-UxM6IM}}}\lang1033\b0\f0\fs24\par
\par
\lang9\b\fs28\tab Burst\lang1033\b0\fs24\par
\par
\b\fs22 Burst Type\b0 : Defines how total amount of burst particles for every particle system will be calculated. \fs24\par
\pard\nowidctlpar\li720\sl276\slmult1\tx720\f1\'b7\tab\lang9\b\f0\fs22 None\b0 : \lang1033 Object won't produce Burst particles, only Distance particles will be emitted.\fs24\par
\f1\'b7\tab\lang9\b\f0\fs22 Total Amount\b0 : \lang1033\b Burst Amount \b0 property value will be shared among all fragments. For instance, if \b Burst Amount \b0 value set to 100 and object was demolished to 5 fragments every fragment will emit 20 particles.\fs24\par
\f1\'b7\tab\b\f0\fs22 Per One Unity Size\b0 : Every fragment will emit burst particles accordingly to it's size measured by distance between Bounding Box Min and Max corners. For instance, if \b Burst Amount \b0 value set to 15 and object has size equal to 2 units it will emit 30 particle.\fs24\par
\f1\'b7\tab\b\f0\fs22 Fragment Amount\b0 : Every fragment will emit particles equal to \b Burst Amount \b0 value.\fs24\par
\pard\nowidctlpar\li360\sl276\slmult1\par
\pard\nowidctlpar\sl276\slmult1\b\fs22 Burst Amount\b0 : Value which used by Burst Type to calculate final amount of particles which every object should emit\lang9\b .\lang1033\b0\fs24\par
\par
\lang9\b\fs28\tab Distance\lang1033\b0\fs24\par
\par
\b\fs22 Distance Rate\b0 : Defines amount of particles which should be emitted over one unit distance if object with particle system moves.\fs24\par
\par
\b\fs22 Duration\b0 : Defines duration of particles emitting by distance.\fs24\par
\par
\lang9\b\fs28\tab Lifetime\lang1033\b0\fs24\par
\par
\b\fs22 Life Min\b0 : Defines minimum time of particle system existence. Final life time will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Life Max\b0 : Defines maximum time of particle system existence. \fs24\par
\par
\lang9\b\fs28\tab Size\lang1033\b0\fs24\par
\par
\b\fs22 Size Min\b0 : Defines minimum size of particle. Final size will be in range between Min and Max values.\par
\fs24\par
\b\fs22 Size Max\b0 : Defines maximum size of particle. \fs24\par
\par
\pard\nowidctlpar\li360\sl276\slmult1\par
\pard\nowidctlpar\sl276\slmult1\lang9\i\fs44\tab\i0 Dynamic\lang1033\fs24\par
\lang9\b\fs32{\field{\*\fldinst{HYPERLINK "https://youtu.be/SHaJdsnciCo"}}{\fldrslt{\ul\cf1 https://youtu.be/SHaJdsnciCo}}}\lang1033\b0\f0\fs24\par
\par
\lang9\b\fs28\tab Speed\lang1033\b0\fs24\par
\par
\b\fs22 Speed Min\b0 : Defines minimum initial speed of particle. Final speed will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Speed Max\b0 : Defines maximum initial speed of particle. \fs24\par
\par
\lang9\b\fs28\tab Inherit Velocity\lang1033\b0\fs24\par
\par
\fs22 Inherited velocity allows to add velocity of emitter object to initial particle velocity. \fs24\par
\par
\b\fs22 Velocity Min\b0 : Defines minimum velocity multiplier of particle. Final inherited velocity multiplier will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Velocity Max\b0 : Defines maximum velocity multiplier of particle. \fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\b\fs28\tab Gravity Modifier\lang1033\b0\fs24\par
\par
\b\fs22 Gravity Min\b0 : Defines minimum gravity for particle system. Final gravity will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Gravity Max\b0 : Defines maximum gravity for particle system.\fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\b\fs28\tab Rotation\lang1033\b0\fs24\par
\par
\b\fs22 Rotation Speed\b0 : Defines particle rotation speed.\fs24\par
\par
\lang9\i\fs44\tab\i0 Noise\lang1033\fs24\par
\fs22 Noise allows to add some turbulent move in particle velocity.\fs24\par
\lang9\b\fs32{\field{\*\fldinst{HYPERLINK "https://youtu.be/jlJ_NrufFGU"}}{\fldrslt{\ul\cf1 https://youtu.be/jlJ_NrufFGU}}}\lang1033\b0\f0\fs24\par
\par
\lang9\b\fs28\tab Main\lang1033\b0\fs24\par
\par
\b\fs22 Enabled\b0 : Enables Noise.\fs24\par
\par
\b\fs22 Quality\b0 : Defines quality for Noise. \fs24\par
\par
\lang9\b\fs28\tab Strength\lang1033\b0\fs24\par
\par
\b\fs22 Strength Min\b0 : Defines minimum Noise strength for particle. Final Noise strength will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Strength Max\b0 : Defines maximum Noise strength for particle. \fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\b\fs28\tab Other\lang1033\b0\fs24\par
\par
\b\fs22 Frequency\b0 : Defines how frequent will be turbulence.\fs24\par
\par
\lang9\fs44\tab Collision\lang1033\fs24\par
\lang9\b\fs32{\field{\*\fldinst{HYPERLINK "https://youtu.be/vWAgUohJ-zc"}}{\fldrslt{\ul\cf1 https://youtu.be/vWAgUohJ-zc}}}\lang1033\b0\f0\fs24\par
\par
\lang9\b\fs28\tab Common\lang1033\b0\fs24\par
\par
\b\fs22 Collides with\b0 : Defines how total amount of burst particles for every particle system will be calculated. \fs24\par
\pard\nowidctlpar\li720\sl276\slmult1\tx720\f1\'b7\tab\lang9\b\f0\fs22 Everything\b0 : \lang1033 Object won't produce Burst particles, only Distance particles will be emitted.\fs24\par
\f1\'b7\tab\lang9\b\f0\fs22 Nothing: \lang1033\b0 property value will be shared among all fragments. For instance, if \fs24\par
\pard\nowidctlpar\sl276\slmult1\par
\b\fs22 Quality\b0 : Defines how total amount of burst particles for every particle system will be \fs24\par
\pard\nowidctlpar\li720\sl276\slmult1\tx720\f1\'b7\tab\lang9\b\f0\fs22 High\b0 : \lang1033 Object won't produce Burst particles, only Distance particles will be emitted.\fs24\par
\f1\'b7\tab\lang9\b\f0\fs22 Medium: \lang1033\b0 property value will be shared among all fragments. For instance, if \fs24\par
\f1\'b7\tab\lang9\b\f0\fs22 Low: \lang1033\b0 property value will be shared among all fragments. For instance, if \fs24\par
\pard\nowidctlpar\sl276\slmult1\par
\b\fs22 Radius Scale\b0 : Collision sphere radius multiplier.\fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\b\fs28\tab Dampen\lang1033\b0\fs24\par
\par
\b\fs22 Dampen Type\b0 : Defines particle dampen. \fs24\par
\pard\nowidctlpar\li720\sl276\slmult1\tx720\f1\'b7\tab\lang9\b\f0\fs22 By Physical Material\b0 : \lang1033 Particle will get dampen by physical material friction that defined in collider of object which generated this particle system.\fs24\par
\f1\'b7\tab\lang9\b\f0\fs22 By Properties: \lang1033\b0 Particle will get dampen by\b Dampen Max \b0 and \b Min \b0 properties.\fs24\par
\pard\nowidctlpar\sl276\slmult1\par
\b\fs22 Dampen Max\b0 : Defines minimum dampen value for particle. Final dampen will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Dampen Max\b0 : Defines maximum dampen for particle. \fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\b\fs28\tab Bounce\lang1033\b0\fs24\par
\par
\b\fs22 Bounce Type\b0 : Defines particle bounce. \fs24\par
\pard\nowidctlpar\li720\sl276\slmult1\tx720\f1\'b7\tab\lang9\b\f0\fs22 By Physical Material\b0 : \lang1033 Particle will get bounce by physical material that defined in collider of object which generated this particle system.\fs24\par
\f1\'b7\tab\lang9\b\f0\fs22 By Properties: \lang1033\b0 Particle will get bounce by \b Bounce Max \b0 and \b Min \b0 properties.\fs24\par
\pard\nowidctlpar\sl276\slmult1\par
\b\fs22 Bounce Max\b0 : Defines minimum bounce value for particle. Final bounce will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Bounce Max\b0 : Defines maximum bounce value for particle. \fs24\par
\lang9\fs44\tab\lang1033\fs24\par
\lang9\fs44\tab Limitations\lang1033\fs24\par
\lang9\b\fs32{\field{\*\fldinst{HYPERLINK "https://youtu.be/6QsbwvpMX4E"}}{\fldrslt{\ul\cf1 https://youtu.be/6QsbwvpMX4E}}}\lang1033\b0\f0\fs24\par
\par
\lang9\b\fs28\tab Particle system\lang1033\b0\fs24\par
\par
\b\fs22 Min Particles\b0 : Defines minimum amount of particles for particle system. If final amount of particles will be less than this value then particle system will not be created.\fs24\par
\par
\b\fs22 Max Particles\b0 : Defines maximum amount of particles for particle system. If final amount of particles will be higher than this values then particle system will be created but won't show more particles than \b Max Particles \b0 value.\fs24\par
\par
\lang9\b\fs28\tab Fragments\lang1033\b0\fs24\par
\par
\b\fs22 Percentage\b0 : Defines amount of fragments in percentage which will generate particle system.\fs24\par
\par
\b\fs22 Size Threshold\b0 : Defines minimum size in units for object to create particle system. If object size is less than this values then it won't create particle system. Using this property you can exclude very small objects from particle generation. \fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\b\fs28\tab\b0\fs44 Rendering\lang1033\fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\b\fs28\tab Shadows\lang1033\b0\fs24\par
\par
\b\fs22 Cast Shadow\b0 : Enables shadow casting for particle debris.\fs24\par
\par
\b\fs22 Receive Shadow\b0 : Enables shadow receiving for particle debris .\fs24\par
\par
\par
\par
}

View File

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

View File

@ -0,0 +1,141 @@
{\rtf1\ansi\ansicpg1252\deff0{\fonttbl{\f0\fswiss\fcharset0 Calibri;}{\f1\fnil\fcharset2 Symbol;}}
{\colortbl ;\red0\green0\blue255;}
{\*\generator Msftedit 5.41.21.2510;}\viewkind4\uc1\pard\nowidctlpar\sl276\slmult1\qc\lang9\ul\b\f0\fs52 RayFire Dust\lang1033\ulnone\b0\fs24\par
\pard\nowidctlpar\sl276\slmult1\par
\lang9\fs22 RayFire Dust component creates dust using native Unity particle system and predefined dust material reference. You can create dust on object \b Demolition\b0 , \b Activation \b0 and on gun shooting \b Impact. \b0 Dust component should be used only as addition to Rigid component. If Rigid component Object type set to Mesh Root it will copy Dust component to every child as well.\par
Dust componenet has a lot of similarities with Debris component and has no much video overviews, so you can check Debris video overviews to see how all preoperties affect to Dust behaviour.\lang1033\fs24\par
\lang9\fs28\tab\lang1033\fs24\par
\lang9\b\fs48\tab Emit Dust\lang1033\b0\fs24\par
\lang9\b\fs32{\field{\*\fldinst{HYPERLINK "https://youtu.be/vD3a9hhIMJE"}}{\fldrslt{\ul\cf1 https://youtu.be/vD3a9hhIMJE}}}\lang1033\b0\f0\fs24\par
\par
\lang9\b\fs22 On Demolition\lang1033\b0 : Demolished object fragments will emit dust.\fs24\par
\par
\lang9\b\fs22 On Activation\lang1033\b0 : Activated object will emit dust.\fs24\par
\par
\lang9\b\fs22 On Impact\lang1033\b0 : Object will emit dustat the psotion when it was shot by RayFire Gun component.\fs24\par
\par
\par
\lang9\b\fs48\tab Main\lang1033\b0\fs24\par
\lang9\b\fs48\tab\lang1033\b0\fs24\par
\lang9\b\fs22 Opacity\lang1033\b0 : Dust opacity.\fs24\par
\par
\lang9\b\fs22 Dust Material\lang1033\b0 : Material with texture which will be used for dust.\par
\par
\lang9\b Dust Materials list\lang1033\b0 : List with Materials, every particle system will pick random material from this list..\fs24\par
\par
\lang9\b\fs22 Emission Material\lang1033\b0 : By default particle system will emit dust over whole object surface. You can define specific surface to emit dust using this Emission material field.\fs24\par
\par
\lang9\b\fs48\tab Properties\lang1033\b0\fs24\par
\par
\lang9\fs44\tab Emission\lang1033\fs24\par
\par
\lang9\b\fs28\tab Burst\lang1033\b0\fs24\par
\par
\b\fs22 Burst Type\b0 : Defines how total amount of burst particles for every particle system will be calculated. \fs24\par
\pard\nowidctlpar\li720\sl276\slmult1\tx720\f1\'b7\tab\lang9\b\f0\fs22 None\b0 : \lang1033 Object won't produce Burst particles, only Distance particles will be emitted.\fs24\par
\f1\'b7\tab\lang9\b\f0\fs22 Total Amount\b0 : \lang1033\b Burst Amount \b0 property value will be shared among all fragments. For instance, if \b Burst Amount \b0 value set to 100 and object was demolished to 5 fragments every fragment will emit 20 particles.\fs24\par
\f1\'b7\tab\b\f0\fs22 Per One Unity Size\b0 : Every fragment will emit burst particles accordingly to it's size measured by distance between Bounding Box Min and Max corners. For instance, if \b Burst Amount \b0 value set to 15 and object has size equal to 2 units it will emit 30 particles.\fs24\par
\f1\'b7\tab\b\f0\fs22 Fragment Amount\b0 : Every fragment will emit particles equal to \b Burst Amount \b0 value.\fs24\par
\pard\nowidctlpar\li360\sl276\slmult1\par
\pard\nowidctlpar\sl276\slmult1\b\fs22 Burst Amount\b0 : Value which used by Burst Type to calculate final amount of particles which every object should emit\lang9\b .\lang1033\b0\fs24\par
\par
\lang9\b\fs28\tab Distance\lang1033\b0\fs24\par
\par
\b\fs22 Distance Rate\b0 : Defines amount of particles which should be emitted over one unit distance if object with particle system moves.\fs24\par
\par
\b\fs22 Duration\b0 : Defines duration of particles emitting by distance.\fs24\par
\par
\lang9\b\fs28\tab Lifetime\lang1033\b0\fs24\par
\par
\b\fs22 Life Min\b0 : Defines minimum time of particle system existence. Final life time will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Life Max\b0 : Defines maximum time of particle system existence. \fs24\par
\par
\lang9\b\fs28\tab Size\lang1033\b0\fs24\par
\par
\b\fs22 Size Min\b0 : Defines minimum size of particle. Final size will be in range between Min and Max values. This value works as scale multiplier for debris reference.\fs24\par
\par
\b\fs22 Size Max\b0 : Defines maximum size of particle. \fs24\par
\par
\pard\nowidctlpar\li360\sl276\slmult1\par
\pard\nowidctlpar\sl276\slmult1\lang9\i\fs44\tab\i0 Dynamic\lang1033\fs24\par
\par
\lang9\b\fs28\tab Speed\lang1033\b0\fs24\par
\par
\b\fs22 Speed Min\b0 : Defines minimum initial speed of particle. Final speed will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Speed Max\b0 : Defines maximum initial speed of particle. \fs24\par
\lang9\b\fs28\tab\par
\tab Rotation\lang1033\b0\fs24\par
\par
\b\fs22 Rotation Speed\b0 : Defines particle rotation speed.\fs24\par
\lang9\b\fs28\tab\par
\tab Gravity Modifier\lang1033\b0\fs24\par
\par
\b\fs22 Gravity Min\b0 : Defines minimum gravity for particle system. Final gravity will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Gravity Max\b0 : Defines maximum gravity for particle system.\fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\par
\lang9\i\fs44\tab\i0 Noise\lang1033\fs24\par
\fs22 Noise allows to add some turbulent move in particle velocity.\fs24\par
\lang9\b\fs32{\field{\*\fldinst{HYPERLINK "https://youtu.be/jlJ_NrufFGU"}}{\fldrslt{\ul\cf1 https://youtu.be/jlJ_NrufFGU}}}\lang1033\b0\f0\fs24\par
\par
\lang9\b\fs28\tab Main\lang1033\b0\fs24\par
\par
\b\fs22 Enabled\b0 : Enables Noise.\fs24\par
\par
\b\fs22 Quality\b0 : Defines quality for Noise. \fs24\par
\par
\lang9\b\fs28\tab Strength\lang1033\b0\fs24\par
\par
\b\fs22 Strength Min\b0 : Defines minimum Noise strength for particle. Final Noise strength will be in range between Min and Max values.\fs24\par
\par
\b\fs22 Strength Max\b0 : Defines maximum Noise strength for particle. \fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\b\fs28\tab Other\lang1033\b0\fs24\par
\par
\b\fs22 Frequency\b0 : Defines how frequent will be turbulence.\fs24\par
\par
\lang9\fs44\tab Collision\lang1033\fs24\par
\par
\lang9\b\fs28\tab Common\lang1033\b0\fs24\par
\par
\b\fs22 Collides with\b0 : Defines how total amount of burst particles for every particle system will be calculated. \fs24\par
\pard\nowidctlpar\li720\sl276\slmult1\tx720\f1\'b7\tab\lang9\b\f0\fs22 Everything\b0 : \lang1033 Object won't produce Burst particles, only Distance particles will be emitted.\fs24\par
\f1\'b7\tab\lang9\b\f0\fs22 Nothing: \lang1033\b0 property value will be shared among all fragments. For instance, if \fs24\par
\pard\nowidctlpar\sl276\slmult1\par
\b\fs22 Quality\b0 : Defines how total amount of burst particles for every particle system will be \fs24\par
\pard\nowidctlpar\li720\sl276\slmult1\tx720\f1\'b7\tab\lang9\b\f0\fs22 High\b0 : \lang1033 Object won't produce Burst particles, only Distance particles will be emitted.\fs24\par
\f1\'b7\tab\lang9\b\f0\fs22 Medium: \lang1033\b0 property value will be shared among all fragments. For instance, if \fs24\par
\f1\'b7\tab\lang9\b\f0\fs22 Low: \lang1033\b0 property value will be shared among all fragments. For instance, if \fs24\par
\pard\nowidctlpar\sl276\slmult1\par
\b\fs22 Radius Scale\b0 : Collision sphere radius multiplier.\fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\fs44\tab\lang1033\fs24\par
\lang9\fs44\tab Limitations\lang1033\fs24\par
\par
\lang9\b\fs28\tab Particle system\lang1033\b0\fs24\par
\par
\b\fs22 Min Particles\b0 : Defines minimum amount of particles for particle system. If final amount of particles will be less than this value then particle system will not be created.\fs24\par
\par
\b\fs22 Max Particles\b0 : Defines maximum amount of particles for particle system. If final amount of particles will be higher than this values then particle system will be created but won't show more particles than \b Max Particles \b0 value.\fs24\par
\par
\lang9\b\fs28\tab Fragments\lang1033\b0\fs24\par
\par
\b\fs22 Percentage\b0 : Defines amount of fragments in percentage which will generate particle system.\fs24\par
\par
\b\fs22 Size Threshold\b0 : Defines minimum size in units for object to create particle system. If object size is less than this values then it won't create particle system. Using this property you can exclude very small objects from particle generation. \fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\b\fs28\tab\b0\fs44 Rendering\lang1033\fs24\par
\lang9\b\fs28\tab\lang1033\b0\fs24\par
\lang9\b\fs28\tab Shadows\lang1033\b0\fs24\par
\par
\b\fs22 Cast Shadow\b0 : Enables shadow casting for particles.\fs24\par
\par
\b\fs22 Receive Shadow\b0 : Enables shadow receiving for particles.\fs24\par
\par
\par
\par
}

View File

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

View File

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

View File

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

View File

@ -0,0 +1,450 @@
{\rtf1\ansi\ansicpg1251\deff0\nouicompat\deflang1049{\fonttbl{\f0\fnil\fcharset0 Calibri;}{\f1\fnil\fcharset1 Cambria Math;}{\f2\fnil\fcharset0 Arial Unicode MS;}{\f3\fnil\fcharset0 Consolas;}{\f4\fnil\fcharset2 Symbol;}}
{\colortbl ;\red0\green0\blue255;\red0\green0\blue0;\red208\green208\blue208;}
{\*\generator Riched20 10.0.19041}{\*\mmathPr\mmathFont1\mwrapIndent1440 }\viewkind4\uc1
\pard\sl276\slmult1\qc\highlight0\ul\b\f0\fs52\lang9 RayFire Rigid\par
\pard\sl276\slmult1\par
\ulnone\b0\fs22 It's main purpose is \b Advanced Physics Control\b0 and \b Runtime Demolitions\b0 . Using Rigid component you can demolish 3d objects into thousands of fragments and every fragment can be demolished further deeper and deeper.\par
\par
\b Initialization\b0 : Defines when an object will be initialized. Initialization adds all necessary components to the object, setup them accordingly to properties and start necessary coroutines.\par
{\b\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/-wW9OfnhIh0 }}{\fldrslt{https://youtu.be/-wW9OfnhIh0\ul0\cf0}}}}\b\f0\fs32\par
\par
\pard\li720\sl276\slmult1\tx720\b0\f1\fs24\u8729?\f2\tab\b\f0\fs22 By Method\b0 : Object will be initialized by \b\i Initialize()\b0 \i0 method. This is the default initialization type. In this way you can add a Rigid component to objects in your code and they will not be initialized unless you will Initialize them as well. Object with \b ByMethod\b0 type can be initialized in Editor using the Initialize button on top of the Rigid component.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 At Start\b0 : Object will be initialized at Start.\par
\pard\li360\sl276\slmult1\lang9\par
\pard\sl276\slmult1 Object can be initialized using method:\par
\cf1\f3\fs19 public\cf2 \cf1 void\cf2 Initialize()\par
\cf0\f0\fs28\tab\par
\b\fs48\tab Main\par
\par
\fs22 Simulation Type\b0 : Defines behavior of object during simulation.\par
{\b\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/KZ8h9F45lkM }}{\fldrslt{https://youtu.be/KZ8h9F45lkM\ul0\cf0}}}}\b\f0\fs32\par
\par
\pard\li720\sl276\slmult1\tx720\b0\f1\fs24\u8729?\f2\tab\b\f0\fs22 Dynamic\b0 : Object will be affected by gravity, will start to fall down and it will be possible to affect on it by other simulated objects. \par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Sleeping\b0 : Object will freeze in air until first collision with any other object, then it will start to behave as a Dynamic object.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Inactive\b0 : Object will freeze in air and will not be affected by gravity, it can be affected by other simulated objects but it will not start to fall down until it will be activated. After activation the object will start to behave like a Dynamic object.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Kinematic\b0 : Object will use it's animation to affect other objects but it will not be affected anyhow by any other object. Can use actual mesh as a collider.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Static\b0 : Object will not be moved from it's position, it will interact with Dynamic objects but it will not be affected anyhow by any other object. Can use actual mesh as a collider.\par
\pard\sl276\slmult1\lang9\par
\pard\sl276\slmult1\qc\b ***\par
\pard\sl276\slmult1\par
Object Type\b0 : Rigid component can simulate a single object using it's mesh for simulation, but also it can simulate multiple objects as one concave object using all children meshes.\par
{\b\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/fbVG1Y0RoBY }}{\fldrslt{https://youtu.be/fbVG1Y0RoBY\ul0\cf0}}}}\b\f0\fs32\par
\par
\pard\li720\sl276\slmult1\tx720\b0\f1\fs24\u8729?\f2\tab\b\f0\fs22 Mesh\b0 : Simulate object using its Meshfilter's mesh in Mesh Collider.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Mesh Root\b0 : Should be added to the empty root with children with meshes. Add the same Rigid component to all children and simulate them as \b Mesh \b0 type. Root itself is not going to be simulated. Using this type you don't need to select every child to add Rigid components or to edit them later, you only need to edit all properties for Root.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Skinned Mesh\b0 : Demolishes Skinned mesh object. Skinned Mesh objects can be demolished only by manually using the public method Demolish().\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Nested Cluster\b0 : Simulated object using all its children Meshfilter's meshes as one solid concave object. In this case root will get a Mesh Collider for every child with it's mesh. To Create such an object you need to add a Rigid component to the root which has all objects which you want to simulate as solid object as its children. In case of demolition Cluster will detach every child and start simulating them on their own. If a child is also just a root for other children with meshes after demolition it will be considered as a Nested Cluster as well. In this way you can demolish object in your own way.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Connected Cluster\b0 : Simulated object using all its children Meshfilter's meshes as one solid concave object like Nested Cluster. It uses only children from the first layer, nesting is not allowed. During demolition it will detach fragments at contact point while the rest of the fragments will stay as a solid cluster. At every demolition cluster checks itself for connectivity and if it detects that some groups of fragments are not connected together anymore they will start to simulate as separate Connected Clusters.\par
\pard\sl276\slmult1\lang9\par
\pard\sl276\slmult1\qc\b ***\par
\pard\li360\sl276\slmult1\par
\pard\sl276\slmult1 Demolition Type\b0 : Define when and how object will be demolished during Play mode. \par
{\b\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/_aO08dcqBOQ }}{\fldrslt{https://youtu.be/_aO08dcqBOQ\ul0\cf0}}}}\b\f0\fs32\par
\par
\pard\li720\sl276\slmult1\tx720\b0\f1\fs24\u8729?\f2\tab\b\f0\fs22 None\b0 : Object will not be demolished.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Runtime\b0 : Object will be demolished in Runtime. Fragments will be created at collision contact moment. It is better to use this type for low poly objects with low Fragments \b Amount \b0 value. Slowest speed among other types.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Awake Precache\b0 : Object will precached all fragments mesh data in Awake and store all mesh data info in Rigid component. At collision contact gameobjects with all necessary components will be created and mesh will be assigned. \par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Awake Prefragment\b0 : Object will be prefragmented in Awake. All fragments will be disabled and waiting for demolition. \par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Reference Demolition\b0 : Allows to swap demolished object to predefined reference and demolish instance of this reference instead. Reference object could be FBX asset, prefab or other scene object.\par
\pard\sl276\slmult1\qc\lang9\par
\pard\sl276\slmult1\b\fs48\tab Simulation\par
\par
\b0\fs44\tab Physics\par
{\b\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/MxMaPZLpLto }}{\fldrslt{https://youtu.be/MxMaPZLpLto\ul0\cf0}}}}\b\f0\fs32\par
\par
\fs28\tab Physic Material\par
\par
\fs22 Material Type\b0 : Material preset with predefined density, friction, elasticity and solidity. Can be edited in the Rayfire Man component.\par
\par
\b Material\b0 : Allows to define own \b Physic Material.\b0 Keep in mind that it still will define \b Material Type\b0 for \b Solidity \b0 and \b Mass\b0 .\par
\par
\b\fs28\tab Mass\par
\par
\fs22 Mass By\b0 : Allows to choose the way Mass will be applied to the RigidBody component.\par
\pard\li720\sl276\slmult1\tx720\f1\fs24\u8729?\f2\tab\b\f0\fs22 Material Density\b0 : Object will get mass according to defined \b Material Type \b0 and mesh volume.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Mass Property\b0 : Object will get mass by Mass property\par
\pard\sl276\slmult1\b\lang9 Mass\b0 : RigidBody component will get this value if \b Mass By\b0 set to \b Mass Property.\par
\par
\fs28\tab Collider\par
\par
\fs22 Collider Type\b0 : Allows to choose automatic collider type for object if the object has no custom collider applied.\par
\pard\li720\sl276\slmult1\tx720\f1\fs24\u8729?\f2\tab\b\f0\fs22 Mesh\b0 : Object will get Mesh Collider.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Sphere\b0 : Object will Sphere Collider.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Box\b0 : Object will get Box Collider.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 None\b0 : Object will not get an automatic collider.\par
\lang9\par
\pard\sl276\slmult1\b Planar Check\b0 : Do not add Mesh Collider to object with very small and/or planar mesh. Mesh Collider can't add the correct mesh collider to such meshes so applied mesh collider is always bigger than it should be and when such an object is positioned very close to other objects such collider will cause explosive simulations. Enable this property to avoid such simulation behaviour.\par
\par
\b Ignore Near\b0 : Allows to ignore all colliders around object if their bounding boxes overlap with each other. Enable if you have a lot of objects positioned close to each other so their convex mesh colliders overlap with each other which causes unstable simulation\b .\par
\par
\par
\fs28\tab Other\par
\pard\li360\sl276\slmult1\par
\pard\sl276\slmult1\fs22 Use Gravity\b0 : Object will be affected by Gravity force. \par
\par
\b Solver Iterations\b0 : Defines Solver Iterations for objects Rigid Body component. \par
\par
\b\fs28\tab Fragments\par
\par
\fs22 Dampening\b0 : Decrease velocity of demolished fragments.\par
\pard\li360\sl276\slmult1\par
\pard\sl276\slmult1\i\fs44\tab Activation\par
{\b\i0\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/t8JbxKyP91Y }}{\fldrslt{https://youtu.be/t8JbxKyP91Y\ul0\cf0}}}}\b\i0\f0\fs32\par
\par
\b0\fs22 Inactive object can be activated using public method:\par
\cf1\f3\fs19 public\cf2 \cf1 void\cf2 Activate()\par
\par
\cf0\b\f0\fs22 By Velocity\b0 : Inactive object will be activated when it's velocity will be higher than \b By Velocity \b0 value when it was pushed by other dynamic objects. Turned Off when set to 0.\par
\par
\b By Offset\b0 : Inactive object will be activated if pushed from its original position farther than \b By Offset \b0 value. Turned Off when set to 0.\par
\par
\b By Damage\b0 : Inactive object will be activated if it's Current Damage will be higher than \b By Damage\b0 value. Turned Off when set to 0.\par
\par
\b By Activator\b0 : Inactive object will be activated by overlapping with object with \b RayFire Activator \b0 component.\par
\par
\b By Impact\b0 : Inactive object will be activated when it will be shot by \b RayFire Gun \b0 component.\par
\par
\b By Connectivity\b0 : Inactive object will be activated if it won't be able to reach any Inactive object with Unyielding property On through other Inactive objects. \b RayFire Connectivity \b0 components have to be used to establish connectivity between Inactive objects and activate them if they lose connection with other Inactive objects.\par
\par
\b\fs28\tab Connectivity\par
\par
\fs22 Unyielding\b0 : Allows to define Inactive/Kinematic object as Unyielding to check for connection with other Inactive/Kinematic objects with enabled By Connectivity activation type.\par
\par
\b Activatable\b0 : Unyielding object can not be activated by default. When On allows to activate Unyielding objects as well.\par
\par
\b\fs28\tab Post Activation\par
\par
\fs22 Layer\b0 : Allows to set different Layer for activated object.\par
\par
\b\fs28\tab\par
\fs48\tab Demolition\par
\b0\fs22 Demolition can be initiated using method:\par
\cf1\f3\fs19 public\cf2 \cf1 void\cf2 DemolishObject()\par
\par
\cf0\f0\fs22 Slicing by planes can be initiated by method:\par
\cf1\f3\fs19 public\cf2 \cf1 void\cf2 AddSlicePlane(V\cf0\fs18 ector3[] slicePlane\cf2\fs19 )\par
V\cf0\fs18 ector3[] slicePlane \f0\fs22 is array with slicing planes info: \par
(plane position, plane normal, plane position, plane normal, etc...)\par
\par
\i\fs44\tab Limitations\par
{\b\i0\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/ITYShtaF5cQ }}{\fldrslt{https://youtu.be/ITYShtaF5cQ\ul0\cf0}}}}\b\i0\f0\fs32\par
\par
\fs28\tab Collision\par
\par
\fs22 By Collision\b0 : Enables demolition by collision.\par
\par
\b Solidity\b0 : Local Object solidity multiplier for object. Low Solidity makes object more fragile. Keep in mind that every \b Material Type \b0 in \b Physics \b0 group also has its own Solidity. Set to 0 if you want an object to be demolished at first contact.\par
\par
\b Tag\b0 : Allows to set specific Tag so object with Rigid will be demolished by collision only when collides with object with defined Tag.\par
\par
\b\fs28\tab Other\par
\par
\fs22 Depth\b0 : Defines how deep object can be demolished. Depth is limitless if set to 0.\par
\i\tab Example\i0 : \b Max Depth \b0 set to 1, it means that object can be demolished one time and \tab new fragments (Depth level 1 fragments) will not be possible to demolish anymore. \par
\tab If \b Max Depth \b0 set to 2, it means that object can be demolished one time and new \tab fragments (Depth level 1 fragments) will possible to demolish one time, but new \tab fragments (Depth level 2 fragments) will not be possible to demolish anymore. Etc\par
\par
\b Time\b0 : Safe time. Measures in seconds and allows to prevent fragments from being demolished right after they were just initialized.\par
\i\tab Example\i0 : \b Time \b0 set to 3 seconds, it means that object can be demolished and \tab new \tab fragments will not be demolished for sure during the next 3 seconds.\par
\par
\b Size\b0 : Prevent objects with bounding box size less than defined value to be demolished. Measures in units.\par
\par
\b Visible\b0 : Prevent object from being demolished if they are not visible by the main camera..\par
\par
\b Slice by Blade\b0 : Allows object to be sliced by object with \b RayFire Blade \b0 component. Keep in mind that collider of sliced object should fit mesh, otherwise Blade object may detect collision enter or exit with such collider and initiate slice outside of the mesh which may cause RFShatter warning messages and/or sliced fragments with artifacts.\par
\par
\i\fs44\tab Mesh Demolition\par
\i0\fs28\tab\par
\tab\b Fragments\par
\par
{\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/TpTHstzzvRU }}{\fldrslt{https://youtu.be/TpTHstzzvRU\ul0\cf0}}}}\f0\fs32\par
\par
\fs22 Amount\b0 : Defines amount of new fragments after demolition.\par
\par
\b Variation\b0 : Defines additional amount variation for object in percents. Final amount will always be higher than \b Amount \b0 value.\par
\i\tab Example\i0 : Amount set to 50, Variation set to 10 %. Final amount will be randomly picked \tab in the range from 50 to 55. \par
\par
\b Depth Fade\b0 : Amount multiplier for next Depth level. Allows to decrease fragments amount of every next demolition level.\par
\i\tab Example\i0 : \b Amount \b0 set to 100. \b Depth Fade \b0 set to 0.5. Object demolishes to 100 \tab fragments. For every fragment it's \b Amount \b0 for next demolition will be set to 50 (100 * \tab 0.5). Let's say some fragment demolishes to 50 fragments. For every fragment among \tab these 50 fragments it's \b Amount \b0 for next demolition will be set to 25 (50 * 0.5). \par
\par
\b Contact Bias\b0 : Higher value allows to create more tiny fragments closer to collision contact point and bigger fragments far from it. This is the property which makes the player understand that Runtime demolition happened right now and nothing was prefragmented before.\par
\par
\b Seed\b0 : Defines Seed for fragmentation algorithm. Same Seed will produce the same fragments for the same object every time.\par
\par
\b Use Shatter\b0 : Allows to use RayFire Shatter properties for fragmentation. Works only if the object has a RayFire Shatter component. This is the only way to create other Fragmentation types in runtime because default demolition fragmentation type produce only regular Voronoi fragments.\par
\par
\b\fs28\tab Advanced\par
\par
\fs22 Clusterize\b0 : Allows to turn demolition fragments to Connected Cluster.\par
\par
\b Mesh Input\b0 : Allows to choose when demolished mesh should be processed for fragmentation. Processing takes about 10% - 15% of total fragmentation time. \par
\pard\li720\sl276\slmult1\tx720\f1\fs24\u8729?\f2\tab\b\f0\fs22 At Start\b0 : Mesh will be processed at Start.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 At Initialization\b0 : Mesh will be processed at Initialization.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 At Demolition\b0 : Mesh will be processed at Demolition.\par
\pard\sl276\slmult1\lang9\par
\i\fs36\tab Properties\par
\par
\i0\fs28\tab\b Collider\par
\par
\fs22 Collider Type\b0 : Defines Collider type for mesh fragments if their bounding box size is less than \b Size Filter \b0 value. Useful in case you want to apply simple colliders for a lot of small fragments. \par
\par
\b Size Filter\b0 : Defines Bounding Box size value for Collider Type property. Turned Off if set to 0.\par
\par
\fs28\tab\b Mesh Ops\par
\par
\fs22 Decompose\b0 : Decompose output fragment's mesh to several meshes if they are not connected with each other.\par
\par
\b Remove Collinear\b0 : Remove collinear vertices on output fragment's mesh.\par
\par
\fs28\tab\b Custom Layer\par
\par
\fs22 Layer\b0 : Set custom Layer to fragments.\par
\par
\fs28\tab\par
\i\fs36\tab Runtime Caching\par
{\b\i0\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/RF-srUHcy0g }}{\fldrslt{https://youtu.be/RF-srUHcy0g\ul0\cf0}}}}\b\i0\f0\fs32\par
\par
\fs22 Type\b0 : Defines Runtime Caching type. Disabled by default.\par
\pard\li720\sl276\slmult1\tx720\f1\fs24\u8729?\f2\tab\b\f0\fs22 By Frames\b0 : Cache fragment's meshes over defined amount of frames.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 By Fragments per Frame\b0 : Cache defined amount of fragment's meshes every frame.\par
\pard\li360\sl276\slmult1\lang9\par
\pard\sl276\slmult1\b Frames\b0 : Defines amount of frames for \b By Frames \b0 type.\par
\par
\b Fragments\b0 : Defines amount of fragments for \b By Fragments per Frame \b0 type.\par
\par
\b Skip First Demolition\b0 : Do not demolish object when all meshes were cached and wait for the next demolition. Allows to use first Demolition to initiate caching and demolish object only at second demolition.\par
\par
\par
\i\fs44\tab Cluster Demolition\par
{\b\i0\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/fNFG4SGWuQQ }}{\fldrslt{https://youtu.be/fNFG4SGWuQQ\ul0\cf0}}}}\b\i0\f0\fs32\par
{{\field{\*\fldinst{HYPERLINK https://youtu.be/ZuHq1OFylnM }}{\fldrslt{https://youtu.be/ZuHq1OFylnM\ul0\cf0}}}}\f0\fs32\par
\par
\b0\fs28\tab\b Properties\par
\par
\fs22 Connectivity\b0 : Define the way connections among Shards will be calculated. \par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 By Bounding Box\b0 : Shards will be considered as connected if their bound boxes interpenetrate with each other. This is the fastest way to establish connectivity and can be used in Runtime, but calculated shared area value will not be precise and will be based on shard's size.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 By Mesh\b0 : Shards will be considered as connected if the triangle of one Shard fits the triangle of neighbor shard. This is the slowest way to establish connectivity and should be used only in Editor with Setup Cluster button, but it precisely calculates shared area value which provides realistic Collapse By Area.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 By Bounding Box and Mesh\b0 : Shards will be considered as connected if their bound boxes interpenetrate with each other. If Shards also share triangles then the Shared area will be calculated using By Mesh method, if shards do not share triangles then By Bounding Box method will be used.\par
\lang9\par
\tab\b\fs28 Filters\par
\par
\b0\fs22 Filters allow you to decrease the amount of connections. There are three filters and they are turned off by default.\par
\par
\b Minimum Area\b0 : Two shards will have connection if their shared area is bigger than this value.\par
\b Minimum Size\b0 : Two shards will have connection if their size is bigger than this value.\par
\b Percentage\b0 : Random percentage of connections will be discarded.\par
\b Seed\b0 : Seed for random percentage filter and for Random Collapse.\par
\par
\b\fs28\tab Demolition Distance\par
\par
\b0\fs22 When a Connected Cluster collides with something or gets Impact from Gun and should be demolished at contact point it has to decide how much Shards should be detached into separate fragments, all Shards in \b Demolition Distance \b0 radius from contact point will be detached. \par
Then the rest of the Shards will check for connectivity with each other and if there are several groups of Shards which are connected only with each other then such groups will be simulated as separate Connected Clusters.\par
\par
\b Type\b0 : Defines the way Demolition Distance will be measured. \par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Ratio To Size\b0 : Measured in percentage relative to initial cluster size. \par
\lang9 For instance, if cluster size is 50 units and Ratio To Size value is 20% then Demolition Distance radius will be 10 units and all Shards in 10 Units radius around contact point will be detached from cluster.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 World Units\b0 : Measured in world Units.\par
\lang9\par
\b Ratio\b0 : Percentage value for Demolition Distance.\par
\par
\b Units\b0 : World Units value for Demolition Distance.\par
\par
\b\fs28\tab Shards\par
\par
\b0\fs22 All detached Shards in the Demolition Distance area will get RayFire Rigid Component with Mesh object type and will be simulated separately. All such Shards will inherit Mesh Demolition properties from the initial Connected Cluster Rigid. But it is possible to clusterize these detached Shards into small Connected Clusters, thanks to this you can create a smooth transition between Initial demolished Connected Cluster to separate detached SHards so between them there will be small groups of Connected Clusters. \par
\par
\b Shard Area\b0 : Defines percentage relative to Demolition Distance. \par
For instance, Cluster size is 50 units, Demolition Distance is 20 units, so all Shards in 20 units radius around contact point will be detached from demolished connected cluster. If Shard Area value is 100% then all Shards will be simulated separately as Rigid with Mesh object type, if Shards Area value is 25% then only Shards in 5 units radius around contact point will be simulated separately and the rest of the Shards from 5 to 20 units radius will be divided into groups and every group will be simulated as small Connected Cluster. Amount of such groups can be defined using Min and Max Amount properties in the Cluster section.\par
\par
\b Shard Demolition\b0 : Set Runtime demolition type for detached Shards with Mesh object type.\par
\par
\b\fs28\tab Clusters\par
\par
\fs22 Min Amount\b0 : Defines minimum amount of Connected Clusters which will be created inside Demolition Distance radius.\par
\par
\b Max Amount\b0 : Defines maximum amount of Connected Clusters which will be created inside Demolition Distance radius. Final value will be picked randomly between Min and Max range.\par
\par
\b Demolishable\b0 : Set Runtime demolition type for created Connected Clusters so it will be possible to demolish them as well.\par
\par
\par
\b\fs28\tab Collapse\par
\par
\fs22 Type\b0 : There are three ways to break connections among Shards. You should try in Editor all of them to find the one which looks better for your structure and your goal. \par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 By Area\b0 : Shard will lose its connections if it's shared area surface is less than defined value.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 By Size\b0 : Shard will lose its connections if it's Size is less then defined value.\par
\f1\fs24\u8729?\f2\tab\b\f0\fs22 Random\b0 : Shard will lose its connections if it's random value in range from 0 to 100 is less than the defined value.\par
\lang9\par
\b Start\b0 : Defines start value in percentage relative to the whole range of picked type. For instance, Type set to By Size, you have 200 shards with the smallest shard size equal to 0.1 unit and biggest shard size equal to 50 units. If you set \b Start \b0 value to 50% it will start to collapse by setting By Size threshold value to 25 units and all shards with size less than 25 units will lose their connections. Increase this value if you want to Start Collapse quickly so a lot of shards will lose connections and will be activated right from the beginning. Set it to 0 if you want to start collapse slowly activating shards one by one.\par
\par
\b End\b0 : Defines end value in percentage relative to the whole range of picked type. Set tp 100 if you want to break all connections or set it lower if you want to keep some connections.\par
\par
\b Steps\b0 : Amount of times when defined threshold value will be set during the Duration\b \b0 period. \par
\par
\b Duration\b0 : Time which will take \b Start \b0 value to be increased to \b End \b0 value\b .\par
\par
\b0\i\fs44\tab Reference Demolition\par
\i0\fs22 Using Reference Demolition type you can swap demolished object to another Gameobject in scene, Prefab asset, FBX asset or even custom Particle System with your own scripts. This demolition type can be used for fragments which you just created using the Shatter component or for FBX asset with fragments which you imported from another 3d package.\par
If Reference is just one object then at demolition it will be demolished instead of original object. \par
If Reference is an empty root with children then these children will be simulated as fragments.\par
It is also possible to keep the Reference field empty so the original demolished object will disappear without leaving anything instead. \par
\par
{\b\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/CtY4w16357Q }}{\fldrslt{https://youtu.be/CtY4w16357Q\ul0\cf0}}}}\b\f0\fs32\par
\par
\par
\b0\fs28\tab\b Source\par
\par
\fs22 Reference\b0 : Defines reference for demolition. Reference will be instantiated and demolished instead of the original object.\par
\par
\b Random List\b0 : Allows to define several references and pick for demolition one random.\par
\par
\fs28\tab\b Properties\par
\par
\fs22 Action\b0 : Defines how source object should be used. \par
\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\fi-360\li720\sl276\slmult1\b Instantiate\b0 : Instantiate Source objects and use instance.\fs24\par
{\pntext\f4\'B7\tab}\b\fs22 Set Active\b0 : Activate Source object and use it for demolition.\fs24\par
\pard\sl276\slmult1\fs22\par
\par
\b Add Rigid\b0 : All references without Rigid Component will get it automatically. Single Object will get Mesh Object Type, Roots with a group of mesh objects will get Mesh Root object type.\par
\par
\b Inherit Scale\b0 : Instantiated reference will inherit original object scale.\par
\par
\i\fs44\tab Materials\par
{\b\i0\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/2Aqdzt58xw0 }}{\fldrslt{https://youtu.be/2Aqdzt58xw0\ul0\cf0}}}}\b\i0\f0\fs32\par
\par
\fs28\tab Inner surface\par
\par
\fs22 Inner material\b0 : Defines material for fragment's inner surface. If not applied RayFire will use original object material for the inner surface.\par
\par
\b Mapping Scale\b0 : Defines mapping scale for inner surface. Using this property you can increase or decrease the size of texture for the inner surface.\par
\b\fs28\tab\par
\tab Outer surface\par
\par
\fs22 Outer material\b0 : Defines material for fragment's.\par
\par
\i\fs44\tab Damage\par
{\b\i0\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/WfoaziBQiGU }}{\fldrslt{https://youtu.be/WfoaziBQiGU\ul0\cf0}}}}\b\i0\f0\fs32\par
\par
\fs22 Enable\b0 : Allows to demolish object by its own floating Damage value. Object will be demolished when Current Damage value will be more or equal Max Damage value. Current Damage value can be increased by RayFireBomb and RayFireGun components, by Collision or by public method:\par
\par
\i\f3\fs20\tab\cf1\i0\fs19 public\cf2 \cf1 bool\cf2 ApplyDamage(\cf1 float\cf2 damageValue, Vector3 damagePosition)\par
\par
\i\f0\fs22 damagePosition: P\i0 osition in world space. In this \cf0 case the damage\cf2 position will be used by Contact Bias to create more tiny fragments \cf0 at the damaged\cf2 area. \par
True boolean return value means \cf0 the\cf2 object was demolished because of applied damage.\par
\par
\cf0\b Max Damage\b0 : Defines maximum allowed damage for an object before it will be demolished.\par
\par
\b Current Damage\b0 : Shows current damage value.\par
\par
\b\fs28\tab Collisions\par
\par
\fs22 Collect \b0 : Allows to accumulate damage value by collisions during dynamic simulation.\par
\par
\b Multiplier\b0 : Multiply collected collision damage.\par
\b\fs32\tab\par
\b0\i\fs44\tab Fading\par
{\b\i0\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/wYFPii-pAuY }}{\fldrslt{https://youtu.be/wYFPii-pAuY\ul0\cf0}}}}\b\i0\f0\fs32\par
\par
\fs28\tab Initiation\par
\par
\fs22 On Demolition\b0 : Initiate Fading for demolished object fragments.\par
\par
\b On Activation\b0 : Initiate Fading when objects Activated (change Inactive simulation type to Dynamic) \par
\par
\b By Offset\b0 : Initiate Fading when objects moved far enough from it's Initialise position. \par
\par
\b\fs28\tab Life\par
\par
\fs22 Life Type\b0 : Defines time while objects will be simulated before object will start to fade. \par
\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\fi-360\li720\sl276\slmult1\b By Life Time\b0 : Life time timer starts right after Fading was initiated and equal to \b Life Time \b0 property value.\fs24\par
{\pntext\f4\'B7\tab}\b\fs22 By Life Time and Simulation\b0 : Life time timer starts when objects stop simulation and do not move for a few seconds, then Life Time timer starts.\fs24\par
\pard\sl276\slmult1\fs22\par
\b Life Time\b0 : Minimum period of time in seconds during which fragments created by demolition or slicing will be simulated.\par
\par
\b Life Variation\b0 : Add random period of time in seconds to final \b Life Time.\par
\par
\fs28\tab Fade\par
\par
\fs22 Fade Type\b0 : Fading lets you keep your scene clean and optimize dynamic simulation by destroying fragments or excluding them from simulation. \par
\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\fi-360\li1440\sl276\slmult1\tx720\b None\b0 : Fragments will stay in the scene with no limitation and they always will be simulated.\fs24\par
{\pntext\f4\'B7\tab}\b\fs22 Sim Exclude\b0 : Fragments will be simulated for\b Life Time \b0 period after their birth, then their Colliders and RigidBody components will be destroyed. \fs24\par
{\pntext\f4\'B7\tab}\b\fs22 Fall Down\b0 : Fragments will be simulated for \b Life Time \b0 period after their birth, then they will fall through the ground and will be destroyed after \b Fade Time \b0 period. \fs24\par
{\pntext\f4\'B7\tab}\b\fs22 Scale Down\b0 : Fragments will be simulated for \b Life Time \b0 period after their birth, then they will start slowly scaling to nothing during the Fade\b Time \b0 period and be destroyed after all.\fs24\par
{\pntext\f4\'B7\tab}\b\fs22 Move Down\b0 : Fragments will be simulated for \b Life Time \b0 period after their birth, then they will move through the ground to the distance equal to their size and will be destroyed after \b Fade Time \b0 period. \fs24\par
{\pntext\f4\'B7\tab}\b\fs22 Destroy: \b0 Fragments will be simulated for \b Life Time \b0 period after their birth and destroyed instantly.\fs24\par
{\pntext\f4\'B7\tab}\b\fs22 Set Static\b0 : Fragments will be simulated for \b Life Time \b0 period after their birth, then Destroy Rigid Body component and leave Collider.\fs24\par
{\pntext\f4\'B7\tab}\b\fs22 Set Kinematic\b0 : Fragments will be simulated for \b Life Time \b0 period after their birth, then Rigid Body component will be set to Kinematic.\fs24\par
\pard\sl276\slmult1\fs22\par
\b Fade Time\b0 : Period of time in seconds during which an object slowly moves through the ground or scales down to nothing.\par
\par
\b Size FIlter\b0 : Prevent object for fading if it's size is bigger than defined value. Turned Off if 0.\par
\par
\par
\i\fs44\tab Reset WIP\par
{\b\i0\fs32{\field{\*\fldinst{HYPERLINK https://www.youtube.com/watch?v=6h94gd_gDrY }}{\fldrslt{https://www.youtube.com/watch?v=6h94gd_gDrY\ul0\cf0}}}}\b\i0\f0\fs32\par
\par
\b0\i\fs44\tab\par
\tab Events\par
{\b\i0\fs32{\field{\*\fldinst{HYPERLINK https://youtu.be/lRlqcHGA1sI }}{\fldrslt{https://youtu.be/lRlqcHGA1sI\ul0\cf0}}}}\b\i0\f0\fs32\par
\par
\b0\fs22 RayFire Rigid component provides subscription to \b Demolition \b0 and \b Activation \b0 events.\par
\par
Subscription to \b Global \b0 event will invoke subscribed method when any demolition happens.\par
\par
\b Global Demolition \b0 event subscription reference\b : \cf3\b0\f3\fs18 \par
\cf0\b\tab\b0 RFDemolitionEvent.GlobalEvent += MyMethod;\par
\par
\b\f0\fs22 Global Activation \b0 event subscription reference\b : \cf3\b0\f3\fs18 \par
\cf0\b\tab\b0 RFActivationEvent.GlobalEvent += MyMethod;\par
\par
\f0\fs22 Subscription to \b Local \b0 event will invoke subscribed method when demolition of specific Rigid script happens and because of this you need to have reference to Rigid component you want to track. \par
\par
\b Local Demolition \b0 event subscription reference\b : \cf3\b0\f3\fs18 \par
\tab\cf0 GameObject myGameObject = GameObject.Find("MyObjectWithRigidComponent");\par
\tab RayfireRigid rigid = myGameObject.\b GetComponent\b0 <RayfireRigid>();\line\tab rigid.demolitionEvent.LocalEvent += MyMethod;\par
\par
\b\f0\fs22 Local Activation \b0 event subscription reference\b : \cf3\b0\f3\fs18 \par
\tab\cf0 GameObject myGameObject = GameObject.Find("MyObjectWithRigidComponent");\par
\tab RayfireRigid rigid = myGameObject.\b GetComponent\b0 <RayfireRigid>();\line\tab rigid.activationEvent.LocalEvent += MyMethod;\par
\par
\f0\fs22 Keep in mind that \f3\fs18 MyMethod\f0\fs22 should have RayFireRigid component as input, in this way you can get access to all public variables of Rigid component, for instance:\par
\pard\li720\sl276\slmult1\f3\fs18 void MyMethod(RayfireRigid rigid)\line\b\{\line \b0 Debug.Log(rigid.\i fragments\i0 .\i Count\i0 );\line\}\par
\pard\sl276\slmult1\f0\fs22 will show in console the amount of fragments which were created as a result of demolition.\par
\par
}

View File

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

View File

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

View File

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

View File

@ -0,0 +1,92 @@
{\rtf1\ansi\deff4\adeflang1025
{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq2\fcharset204 Times New Roman;}{\f4\fswiss\fprq0\fcharset0 Calibri;}{\f5\fswiss\fprq2\fcharset204 Arial;}{\f6\fnil\fprq2\fcharset204 Microsoft YaHei;}{\f7\fnil\fprq2\fcharset204 Mangal;}{\f8\fnil\fprq0\fcharset128 Mangal;}}
{\colortbl;\red0\green0\blue0;\red128\green128\blue128;}
{\stylesheet{\s0\snext0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049 ???????;}
{\s15\sbasedon0\snext16\sb240\sa120\keepn\hich\af6\dbch\af7\afs28\loch\f5\fs28 Çàãîëîâîê;}
{\s16\sbasedon0\snext16\sb0\sa120 Îñíîâíîé òåêñò;}
{\s17\sbasedon16\snext17\sb0\sa120\dbch\af8 Ñïèñîê;}
{\s18\sbasedon0\snext18\sb120\sa120\noline\i\dbch\af8\afs24\ai\fs24 Íàçâàíèå;}
{\s19\sbasedon0\snext19\noline\dbch\af8 Óêàçàòåëü;}
}{\info{\creatim\yr0\mo0\dy0\hr0\min0}{\revtim\yr0\mo0\dy0\hr0\min0}{\printim\yr0\mo0\dy0\hr0\min0}{\comment OpenOffice}{\vern4120}}\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720\deftab720
{\*\pgdsctbl
{\pgdsc0\pgdscuse195\pgwsxn12240\pghsxn15840\marglsxn1800\margrsxn1800\margtsxn1440\margbsxn1440\pgdscnxt0 \u1054\'3f\u1073\'3f\u1099\'3f\u1095\'3f\u1085\'3f\u1099\'3f\u1081\'3f;}}
\formshade{\*\pgdscno0}\paperh15840\paperw12240\margl1800\margr1800\margt1440\margb1440\sectd\sbknone\sectunlocked1\pgndec\pgwsxn12240\pghsxn15840\marglsxn1800\margrsxn1800\margtsxn1440\margbsxn1440\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc
\pgndec\pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1\qc{\ul\ulc0\b\afs52\ab\rtlch \ltrch\loch\fs52\lang9
RayFire Sound}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\afs22\rtlch \ltrch\loch\fs22\lang9
Sound Component allows to play sound at initialization, activation and demolition when used with Rigid component.}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs48\ab\rtlch \ltrch\loch\fs48\lang9
\tab }
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs48\ab\rtlch \ltrch\loch\fs48\lang9
\tab Properties}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs22\ab\rtlch \ltrch\loch\fs22\lang9
Base Volume}{\afs22\rtlch \ltrch\loch\fs22\lang1033
: Base volume for all sound events.}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs22\ab\rtlch \ltrch\loch\fs22\lang9
Size Volume}{\afs22\rtlch \ltrch\loch\fs22\lang1033
: Additional volume value for every Unit size for every object.}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs48\ab\rtlch \ltrch\loch\fs48\lang9
\tab }
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs48\ab\rtlch \ltrch\loch\fs48\lang9
\tab Events}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\afs22\rtlch \ltrch\loch\fs22\lang9
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\afs22\rtlch \ltrch\loch\fs22\lang9
There are three type of sound events, sound can be played at INitialization, Activationa and Demolition. Every event has identical properties.}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs22\ab\rtlch \ltrch\loch\fs22\lang1033
Enable}{\afs22\rtlch \ltrch\loch\fs22\lang1033
: Enable sound play for this event.}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs22\ab\rtlch \ltrch\loch\fs22\lang1033
Multiplier}{\afs22\rtlch \ltrch\loch\fs22\lang1033
: Sound volume multiplier for this event.}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs28\ab\rtlch \ltrch\loch\fs28\lang9
\tab Audios Clips}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs22\ab\rtlch \ltrch\loch\fs22\lang1033
Clip}{\afs22\rtlch \ltrch\loch\fs22\lang1033
: Audio Clip to play.}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs22\ab\rtlch \ltrch\loch\fs22\lang1033
Clips}{\afs22\rtlch \ltrch\loch\fs22\lang1033
: List of random Audio Clips to play}{\b\afs22\ab\rtlch \ltrch\loch\fs22\lang9
. }
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs28\ab\rtlch \ltrch\loch\fs28\lang9
\tab Audio Mixer}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs22\ab\rtlch \ltrch\loch\fs22\lang1033
Output Group}{\afs22\rtlch \ltrch\loch\fs22\lang1033
: Audio Mixer Output Group. }
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs48\ab\rtlch \ltrch\loch\fs48\lang9
\tab }
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs48\ab\rtlch \ltrch\loch\fs48\lang9
\tab Filters}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs22\ab\rtlch \ltrch\loch\fs22\lang9
Minimum Size}{\afs22\rtlch \ltrch\loch\fs22\lang9
: Sound will be played only for objects with size bigger than this value}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\rtlch \ltrch\loch\lang1033
}
\par \pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af4\langfe2052\dbch\af4\afs24\lang1081\loch\f4\fs24\lang1049\sl276\slmult1{\b\afs22\ab\rtlch \ltrch\loch\fs22\lang9
Camer Distance}{\afs22\rtlch \ltrch\loch\fs22\lang9
: }{\afs22\rtlch \ltrch\loch\fs22\lang1033
Sound will be played only if distance between main Camera and source of sound smaller than this value. }
\par }

View File

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

View File

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

View File

@ -0,0 +1,73 @@
RayFire for Unity FAQ.
-------------------------------------------------------------
1.
Q. Why I can't demolish objects which I have as FBX asset.
A. Turn On Read/Write Enabled property in Import Settings.
-------------------------------------------------------------
2.
Q. How to apply different material for inner fragments surface?
A. Both Shatter and Rigid components have Material group of properties.
You can set your custom material for fragment's inner surface in Inner Material field.
-------------------------------------------------------------
3.
Q. Why copy/pasted in Edit Mode component doesn't work as it should in Play mode?
A. Do not copy/paste initialized components or components which allows to Setup them and cache some specific data.
Also do not copy Rigid component if it is Connected Cluster with cached connections.
Instead use Copy Component, Add new component and then use Paste Components Values.
-------------------------------------------------------------
4.
Q. Why my Connectivity setup collapses immediately at Start?
A. Connectivity setup works only with Inactive and Kinematic fragments and need at least one Unyielding fragment.
With Mesh object type Unyielding fragment can be defined in Rigid/Activation properties.
With Mesh Root object type you need to use Unyielding component on the same root object,
it's gizmo should overlap some fragments usually at the bottom of structure.
All fragments will check for connection with Unyielding fragments through other fragments.
-------------------------------------------------------------
5.
Q. Why my fragments explodes immediately at Start?
A. This happens when fragments colliders overlap with each other.
At Start they start pushing each other and cause explosive simulation.
Make sure that fragmented object doesn't have interpenetrated elements.
Also, in some cases mesh has no interpenetration,
but fragments collider may have because dynamic colliders are always convex.
-------------------------------------------------------------
6.
Q. Why I can't demolish Rigid object right after it was initialised?
A. Decrease Time property value in Limitations properties.
It prevents object from being demolished after initialisation.
-------------------------------------------------------------
7.
Q. I am on Mac and I am getting "libRF_CNative.bundle can't be opened
because Apple cannot check it for malicious software" waning.
How can I fix this?
A. Check out this page for more info about how to solve this problem.
https://support.apple.com/en-us/HT202491
-------------------------------------------------------------
8.
Q. Why I get less fragments then I set in Shatter Amount property?
A. Amount property defines amount of points in Point Cloud generated in objects bounding box.
Some points could be outside of mesh volume and may not generate fragment.
-------------------------------------------------------------
9.
Q. Why I can't demolish objects and get more than 1000 fragments?
A. This is default maximum amount of fragments you can get by demolition.
In order to change this value you should create empty game object, add RayFire Man
and define bigger Maximum Amount property value.

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: e92eebaaa1a3b534faaf2eccdfb8bc3d
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

Some files were not shown because too many files have changed in this diff Show More