Compare commits
1 Commits
0f10ce0cd6
...
390a23d062
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
390a23d062 |
@@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 11df597fea8fb461a965d831c26e7568
|
|
||||||
folderAsset: yes
|
|
||||||
DefaultImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
Binary file not shown.
@@ -1,23 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 6a6771d05326c4775a47c0ec4c4e4558
|
|
||||||
AudioImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 8
|
|
||||||
defaultSettings:
|
|
||||||
serializedVersion: 2
|
|
||||||
loadType: 0
|
|
||||||
sampleRateSetting: 0
|
|
||||||
sampleRateOverride: 44100
|
|
||||||
compressionFormat: 1
|
|
||||||
quality: 1
|
|
||||||
conversionMode: 0
|
|
||||||
preloadAudioData: 0
|
|
||||||
platformSettingOverrides: {}
|
|
||||||
forceToMono: 0
|
|
||||||
normalize: 1
|
|
||||||
loadInBackground: 0
|
|
||||||
ambisonic: 0
|
|
||||||
3D: 1
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -308,8 +308,6 @@ GameObject:
|
|||||||
- component: {fileID: 162178408}
|
- component: {fileID: 162178408}
|
||||||
- component: {fileID: 162178410}
|
- component: {fileID: 162178410}
|
||||||
- component: {fileID: 162178409}
|
- component: {fileID: 162178409}
|
||||||
- component: {fileID: 162178412}
|
|
||||||
- component: {fileID: 162178411}
|
|
||||||
m_Layer: 5
|
m_Layer: 5
|
||||||
m_Name: Image Character
|
m_Name: Image Character
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@@ -333,7 +331,7 @@ RectTransform:
|
|||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||||
m_AnchoredPosition: {x: -162, y: 80}
|
m_AnchoredPosition: {x: -267.873, y: 126.63}
|
||||||
m_SizeDelta: {x: 424.251, y: 424.25}
|
m_SizeDelta: {x: 424.251, y: 424.25}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
--- !u!114 &162178409
|
--- !u!114 &162178409
|
||||||
@@ -374,247 +372,6 @@ CanvasRenderer:
|
|||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 162178407}
|
m_GameObject: {fileID: 162178407}
|
||||||
m_CullTransparentMesh: 1
|
m_CullTransparentMesh: 1
|
||||||
--- !u!82 &162178411
|
|
||||||
AudioSource:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 162178407}
|
|
||||||
m_Enabled: 1
|
|
||||||
serializedVersion: 4
|
|
||||||
OutputAudioMixerGroup: {fileID: 0}
|
|
||||||
m_audioClip: {fileID: 0}
|
|
||||||
m_Resource: {fileID: 8300000, guid: 6a6771d05326c4775a47c0ec4c4e4558, type: 3}
|
|
||||||
m_PlayOnAwake: 0
|
|
||||||
m_Volume: 1
|
|
||||||
m_Pitch: 1
|
|
||||||
Loop: 0
|
|
||||||
Mute: 0
|
|
||||||
Spatialize: 0
|
|
||||||
SpatializePostEffects: 0
|
|
||||||
Priority: 128
|
|
||||||
DopplerLevel: 1
|
|
||||||
MinDistance: 1
|
|
||||||
MaxDistance: 500
|
|
||||||
Pan2D: 0
|
|
||||||
rolloffMode: 0
|
|
||||||
BypassEffects: 0
|
|
||||||
BypassListenerEffects: 0
|
|
||||||
BypassReverbZones: 0
|
|
||||||
rolloffCustomCurve:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Curve:
|
|
||||||
- serializedVersion: 3
|
|
||||||
time: 0
|
|
||||||
value: 1
|
|
||||||
inSlope: 0
|
|
||||||
outSlope: 0
|
|
||||||
tangentMode: 0
|
|
||||||
weightedMode: 0
|
|
||||||
inWeight: 0.33333334
|
|
||||||
outWeight: 0.33333334
|
|
||||||
- serializedVersion: 3
|
|
||||||
time: 1
|
|
||||||
value: 0
|
|
||||||
inSlope: 0
|
|
||||||
outSlope: 0
|
|
||||||
tangentMode: 0
|
|
||||||
weightedMode: 0
|
|
||||||
inWeight: 0.33333334
|
|
||||||
outWeight: 0.33333334
|
|
||||||
m_PreInfinity: 2
|
|
||||||
m_PostInfinity: 2
|
|
||||||
m_RotationOrder: 4
|
|
||||||
panLevelCustomCurve:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Curve:
|
|
||||||
- serializedVersion: 3
|
|
||||||
time: 0
|
|
||||||
value: 0
|
|
||||||
inSlope: 0
|
|
||||||
outSlope: 0
|
|
||||||
tangentMode: 0
|
|
||||||
weightedMode: 0
|
|
||||||
inWeight: 0.33333334
|
|
||||||
outWeight: 0.33333334
|
|
||||||
m_PreInfinity: 2
|
|
||||||
m_PostInfinity: 2
|
|
||||||
m_RotationOrder: 4
|
|
||||||
spreadCustomCurve:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Curve:
|
|
||||||
- serializedVersion: 3
|
|
||||||
time: 0
|
|
||||||
value: 0
|
|
||||||
inSlope: 0
|
|
||||||
outSlope: 0
|
|
||||||
tangentMode: 0
|
|
||||||
weightedMode: 0
|
|
||||||
inWeight: 0.33333334
|
|
||||||
outWeight: 0.33333334
|
|
||||||
m_PreInfinity: 2
|
|
||||||
m_PostInfinity: 2
|
|
||||||
m_RotationOrder: 4
|
|
||||||
reverbZoneMixCustomCurve:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Curve:
|
|
||||||
- serializedVersion: 3
|
|
||||||
time: 0
|
|
||||||
value: 1
|
|
||||||
inSlope: 0
|
|
||||||
outSlope: 0
|
|
||||||
tangentMode: 0
|
|
||||||
weightedMode: 0
|
|
||||||
inWeight: 0.33333334
|
|
||||||
outWeight: 0.33333334
|
|
||||||
m_PreInfinity: 2
|
|
||||||
m_PostInfinity: 2
|
|
||||||
m_RotationOrder: 4
|
|
||||||
--- !u!114 &162178412
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 162178407}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier: Assembly-CSharp-firstpass::DG.Tweening.DOTweenAnimation
|
|
||||||
updateType: 0
|
|
||||||
isSpeedBased: 0
|
|
||||||
hasOnStart: 0
|
|
||||||
hasOnPlay: 1
|
|
||||||
hasOnUpdate: 0
|
|
||||||
hasOnStepComplete: 0
|
|
||||||
hasOnComplete: 1
|
|
||||||
hasOnTweenCreated: 0
|
|
||||||
hasOnRewind: 0
|
|
||||||
onStart:
|
|
||||||
m_PersistentCalls:
|
|
||||||
m_Calls: []
|
|
||||||
onPlay:
|
|
||||||
m_PersistentCalls:
|
|
||||||
m_Calls:
|
|
||||||
- m_Target: {fileID: 162178409}
|
|
||||||
m_TargetAssemblyTypeName: UnityEngine.UI.Image, UnityEngine.UI
|
|
||||||
m_MethodName: set_sprite
|
|
||||||
m_Mode: 2
|
|
||||||
m_Arguments:
|
|
||||||
m_ObjectArgument: {fileID: 21300000, guid: b003007f0724f4eb39ca05642c497ce4, type: 3}
|
|
||||||
m_ObjectArgumentAssemblyTypeName: UnityEngine.Sprite, UnityEngine
|
|
||||||
m_IntArgument: 0
|
|
||||||
m_FloatArgument: 0
|
|
||||||
m_StringArgument:
|
|
||||||
m_BoolArgument: 0
|
|
||||||
m_CallState: 2
|
|
||||||
- m_Target: {fileID: 162178411}
|
|
||||||
m_TargetAssemblyTypeName: UnityEngine.AudioSource, UnityEngine
|
|
||||||
m_MethodName: Play
|
|
||||||
m_Mode: 1
|
|
||||||
m_Arguments:
|
|
||||||
m_ObjectArgument: {fileID: 0}
|
|
||||||
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
|
|
||||||
m_IntArgument: 0
|
|
||||||
m_FloatArgument: 0
|
|
||||||
m_StringArgument:
|
|
||||||
m_BoolArgument: 0
|
|
||||||
m_CallState: 2
|
|
||||||
onUpdate:
|
|
||||||
m_PersistentCalls:
|
|
||||||
m_Calls: []
|
|
||||||
onStepComplete:
|
|
||||||
m_PersistentCalls:
|
|
||||||
m_Calls: []
|
|
||||||
onComplete:
|
|
||||||
m_PersistentCalls:
|
|
||||||
m_Calls:
|
|
||||||
- m_Target: {fileID: 162178409}
|
|
||||||
m_TargetAssemblyTypeName: UnityEngine.UI.Image, UnityEngine.UI
|
|
||||||
m_MethodName: set_sprite
|
|
||||||
m_Mode: 2
|
|
||||||
m_Arguments:
|
|
||||||
m_ObjectArgument: {fileID: 21300000, guid: 7ab63bd8191ef49a6918352ece3c5364, type: 3}
|
|
||||||
m_ObjectArgumentAssemblyTypeName: UnityEngine.Sprite, UnityEngine
|
|
||||||
m_IntArgument: 0
|
|
||||||
m_FloatArgument: 0
|
|
||||||
m_StringArgument:
|
|
||||||
m_BoolArgument: 0
|
|
||||||
m_CallState: 2
|
|
||||||
onTweenCreated:
|
|
||||||
m_PersistentCalls:
|
|
||||||
m_Calls: []
|
|
||||||
onRewind:
|
|
||||||
m_PersistentCalls:
|
|
||||||
m_Calls: []
|
|
||||||
targetIsSelf: 1
|
|
||||||
targetGO: {fileID: 0}
|
|
||||||
tweenTargetIsTargetGO: 1
|
|
||||||
delay: 0
|
|
||||||
duration: 0.5
|
|
||||||
easeType: 6
|
|
||||||
easeCurve:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Curve:
|
|
||||||
- serializedVersion: 3
|
|
||||||
time: 0
|
|
||||||
value: 0
|
|
||||||
inSlope: 0
|
|
||||||
outSlope: 0
|
|
||||||
tangentMode: 0
|
|
||||||
weightedMode: 0
|
|
||||||
inWeight: 0
|
|
||||||
outWeight: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
time: 1
|
|
||||||
value: 1
|
|
||||||
inSlope: 0
|
|
||||||
outSlope: 0
|
|
||||||
tangentMode: 0
|
|
||||||
weightedMode: 0
|
|
||||||
inWeight: 0
|
|
||||||
outWeight: 0
|
|
||||||
m_PreInfinity: 2
|
|
||||||
m_PostInfinity: 2
|
|
||||||
m_RotationOrder: 4
|
|
||||||
loopType: 0
|
|
||||||
loops: 1
|
|
||||||
id:
|
|
||||||
isRelative: 0
|
|
||||||
isFrom: 0
|
|
||||||
isIndependentUpdate: 0
|
|
||||||
autoKill: 0
|
|
||||||
autoGenerate: 1
|
|
||||||
isActive: 1
|
|
||||||
isValid: 1
|
|
||||||
target: {fileID: 162178408}
|
|
||||||
animationType: 9
|
|
||||||
targetType: 5
|
|
||||||
forcedTargetType: 0
|
|
||||||
autoPlay: 0
|
|
||||||
useTargetAsV3: 0
|
|
||||||
endValueFloat: 0
|
|
||||||
endValueV3: {x: 0, y: 10, z: 1}
|
|
||||||
endValueV2: {x: 0, y: 0}
|
|
||||||
endValueColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
endValueString:
|
|
||||||
endValueRect:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 0
|
|
||||||
height: 0
|
|
||||||
endValueTransform: {fileID: 0}
|
|
||||||
optionalBool0: 0
|
|
||||||
optionalBool1: 0
|
|
||||||
optionalFloat0: 1
|
|
||||||
optionalInt0: 1
|
|
||||||
optionalRotationMode: 0
|
|
||||||
optionalScrambleMode: 0
|
|
||||||
optionalShakeRandomnessMode: 0
|
|
||||||
optionalString:
|
|
||||||
--- !u!1 &240954698
|
--- !u!1 &240954698
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -712,18 +469,6 @@ MonoBehaviour:
|
|||||||
m_StringArgument:
|
m_StringArgument:
|
||||||
m_BoolArgument: 0
|
m_BoolArgument: 0
|
||||||
m_CallState: 2
|
m_CallState: 2
|
||||||
- m_Target: {fileID: 162178412}
|
|
||||||
m_TargetAssemblyTypeName: DG.Tweening.DOTweenAnimation, Assembly-CSharp-firstpass
|
|
||||||
m_MethodName: DORestart
|
|
||||||
m_Mode: 1
|
|
||||||
m_Arguments:
|
|
||||||
m_ObjectArgument: {fileID: 0}
|
|
||||||
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
|
|
||||||
m_IntArgument: 0
|
|
||||||
m_FloatArgument: 0
|
|
||||||
m_StringArgument:
|
|
||||||
m_BoolArgument: 0
|
|
||||||
m_CallState: 2
|
|
||||||
--- !u!114 &240954701
|
--- !u!114 &240954701
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -777,7 +522,7 @@ MonoBehaviour:
|
|||||||
selectMonitorIndex: 2
|
selectMonitorIndex: 2
|
||||||
takeNumber: 0
|
takeNumber: 0
|
||||||
inputPrefix: {fileID: 56188227}
|
inputPrefix: {fileID: 56188227}
|
||||||
inputResult: {fileID: 975488549}
|
inputResult: {fileID: 0}
|
||||||
directorySelector: {fileID: 1438379834}
|
directorySelector: {fileID: 1438379834}
|
||||||
--- !u!1 &519420028
|
--- !u!1 &519420028
|
||||||
GameObject:
|
GameObject:
|
||||||
@@ -1144,7 +889,7 @@ MonoBehaviour:
|
|||||||
m_lineSpacingMax: 0
|
m_lineSpacingMax: 0
|
||||||
m_paragraphSpacing: 0
|
m_paragraphSpacing: 0
|
||||||
m_charWidthMaxAdj: 0
|
m_charWidthMaxAdj: 0
|
||||||
m_TextWrappingMode: 1
|
m_TextWrappingMode: 3
|
||||||
m_wordWrappingRatios: 0.4
|
m_wordWrappingRatios: 0.4
|
||||||
m_overflowMode: 3
|
m_overflowMode: 3
|
||||||
m_linkedTextComponent: {fileID: 0}
|
m_linkedTextComponent: {fileID: 0}
|
||||||
@@ -1650,7 +1395,7 @@ MonoBehaviour:
|
|||||||
m_InputType: 0
|
m_InputType: 0
|
||||||
m_AsteriskChar: 42
|
m_AsteriskChar: 42
|
||||||
m_KeyboardType: 0
|
m_KeyboardType: 0
|
||||||
m_LineType: 1
|
m_LineType: 0
|
||||||
m_HideMobileInput: 0
|
m_HideMobileInput: 0
|
||||||
m_HideSoftKeyboard: 0
|
m_HideSoftKeyboard: 0
|
||||||
m_CharacterValidation: 0
|
m_CharacterValidation: 0
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 9f80792dcd2829e41b1f075e7245ca5b
|
guid: d4fb1de9b00bfac42af0a35ff2a01f89
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,144 +1,144 @@
|
|||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<doc>
|
<doc>
|
||||||
<assembly>
|
<assembly>
|
||||||
<name>DOTweenEditor</name>
|
<name>DOTweenEditor</name>
|
||||||
</assembly>
|
</assembly>
|
||||||
<members>
|
<members>
|
||||||
<member name="T:DG.DOTweenEditor.EditorCompatibilityUtils">
|
<member name="T:DG.DOTweenEditor.EditorCompatibilityUtils">
|
||||||
<summary>
|
<summary>
|
||||||
Contains compatibility methods taken from DemiEditor (for when DOTween is without it)
|
Contains compatibility methods taken from DemiEditor (for when DOTween is without it)
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorCompatibilityUtils.FindObjectOfType``1(System.Boolean)">
|
<member name="M:DG.DOTweenEditor.EditorCompatibilityUtils.FindObjectOfType``1(System.Boolean)">
|
||||||
<summary>
|
<summary>
|
||||||
Warning: some versions of this method don't have the includeInactive parameter so it won't be taken into account
|
Warning: some versions of this method don't have the includeInactive parameter so it won't be taken into account
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorCompatibilityUtils.FindObjectOfType(System.Type,System.Boolean)">
|
<member name="M:DG.DOTweenEditor.EditorCompatibilityUtils.FindObjectOfType(System.Type,System.Boolean)">
|
||||||
<summary>
|
<summary>
|
||||||
Warning: some versions of this method don't have the includeInactive parameter so it won't be taken into account
|
Warning: some versions of this method don't have the includeInactive parameter so it won't be taken into account
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorCompatibilityUtils.FindObjectsOfType``1(System.Boolean)">
|
<member name="M:DG.DOTweenEditor.EditorCompatibilityUtils.FindObjectsOfType``1(System.Boolean)">
|
||||||
<summary>
|
<summary>
|
||||||
Warning: some versions of this method don't have the includeInactive parameter so it won't be taken into account
|
Warning: some versions of this method don't have the includeInactive parameter so it won't be taken into account
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorCompatibilityUtils.FindObjectsOfType(System.Type,System.Boolean)">
|
<member name="M:DG.DOTweenEditor.EditorCompatibilityUtils.FindObjectsOfType(System.Type,System.Boolean)">
|
||||||
<summary>
|
<summary>
|
||||||
Warning: some versions of this method don't have the includeInactive parameter so it won't be taken into account
|
Warning: some versions of this method don't have the includeInactive parameter so it won't be taken into account
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.DOTweenEditorPreview.Start(System.Action)">
|
<member name="M:DG.DOTweenEditor.DOTweenEditorPreview.Start(System.Action)">
|
||||||
<summary>
|
<summary>
|
||||||
Starts the update loop of tween in the editor. Has no effect during playMode.
|
Starts the update loop of tween in the editor. Has no effect during playMode.
|
||||||
</summary>
|
</summary>
|
||||||
<param name="onPreviewUpdated">Eventual callback to call after every update</param>
|
<param name="onPreviewUpdated">Eventual callback to call after every update</param>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.DOTweenEditorPreview.Stop(System.Boolean,System.Boolean)">
|
<member name="M:DG.DOTweenEditor.DOTweenEditorPreview.Stop(System.Boolean,System.Boolean)">
|
||||||
<summary>
|
<summary>
|
||||||
Stops the update loop and clears the onPreviewUpdated callback.
|
Stops the update loop and clears the onPreviewUpdated callback.
|
||||||
</summary>
|
</summary>
|
||||||
<param name="resetTweenTargets">If TRUE also resets the tweened objects to their original state.
|
<param name="resetTweenTargets">If TRUE also resets the tweened objects to their original state.
|
||||||
Note that this works by calling Rewind on all tweens, so it will work correctly
|
Note that this works by calling Rewind on all tweens, so it will work correctly
|
||||||
only if you have a single tween type per object and it wasn't killed</param>
|
only if you have a single tween type per object and it wasn't killed</param>
|
||||||
<param name="clearTweens">If TRUE also kills any cached tween</param>
|
<param name="clearTweens">If TRUE also kills any cached tween</param>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.DOTweenEditorPreview.PrepareTweenForPreview(DG.Tweening.Tween,System.Boolean,System.Boolean,System.Boolean)">
|
<member name="M:DG.DOTweenEditor.DOTweenEditorPreview.PrepareTweenForPreview(DG.Tweening.Tween,System.Boolean,System.Boolean,System.Boolean)">
|
||||||
<summary>
|
<summary>
|
||||||
Readies the tween for editor preview by setting its UpdateType to Manual plus eventual extra settings.
|
Readies the tween for editor preview by setting its UpdateType to Manual plus eventual extra settings.
|
||||||
</summary>
|
</summary>
|
||||||
<param name="t">The tween to ready</param>
|
<param name="t">The tween to ready</param>
|
||||||
<param name="clearCallbacks">If TRUE (recommended) removes all callbacks (OnComplete/Rewind/etc)</param>
|
<param name="clearCallbacks">If TRUE (recommended) removes all callbacks (OnComplete/Rewind/etc)</param>
|
||||||
<param name="preventAutoKill">If TRUE prevents the tween from being auto-killed at completion</param>
|
<param name="preventAutoKill">If TRUE prevents the tween from being auto-killed at completion</param>
|
||||||
<param name="andPlay">If TRUE starts playing the tween immediately</param>
|
<param name="andPlay">If TRUE starts playing the tween immediately</param>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:DG.DOTweenEditor.EditorVersion.Version">
|
<member name="F:DG.DOTweenEditor.EditorVersion.Version">
|
||||||
<summary>Full major version + first minor version (ex: 2018.1f)</summary>
|
<summary>Full major version + first minor version (ex: 2018.1f)</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:DG.DOTweenEditor.EditorVersion.MajorVersion">
|
<member name="F:DG.DOTweenEditor.EditorVersion.MajorVersion">
|
||||||
<summary>Major version</summary>
|
<summary>Major version</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:DG.DOTweenEditor.EditorVersion.MinorVersion">
|
<member name="F:DG.DOTweenEditor.EditorVersion.MinorVersion">
|
||||||
<summary>First minor version (ex: in 2018.1 it would be 1)</summary>
|
<summary>First minor version (ex: in 2018.1 it would be 1)</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorUtils.SetEditorTexture(UnityEngine.Texture2D,UnityEngine.FilterMode,System.Int32)">
|
<member name="M:DG.DOTweenEditor.EditorUtils.SetEditorTexture(UnityEngine.Texture2D,UnityEngine.FilterMode,System.Int32)">
|
||||||
<summary>
|
<summary>
|
||||||
Checks that the given editor texture use the correct import settings,
|
Checks that the given editor texture use the correct import settings,
|
||||||
and applies them if they're incorrect.
|
and applies them if they're incorrect.
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorUtils.DOTweenSetupRequired">
|
<member name="M:DG.DOTweenEditor.EditorUtils.DOTweenSetupRequired">
|
||||||
<summary>
|
<summary>
|
||||||
Returns TRUE if setup is required
|
Returns TRUE if setup is required
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorUtils.AssetExists(System.String)">
|
<member name="M:DG.DOTweenEditor.EditorUtils.AssetExists(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
Returns TRUE if the file/directory at the given path exists.
|
Returns TRUE if the file/directory at the given path exists.
|
||||||
</summary>
|
</summary>
|
||||||
<param name="adbPath">Path, relative to Unity's project folder</param>
|
<param name="adbPath">Path, relative to Unity's project folder</param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorUtils.ADBPathToFullPath(System.String)">
|
<member name="M:DG.DOTweenEditor.EditorUtils.ADBPathToFullPath(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
Converts the given project-relative path to a full path,
|
Converts the given project-relative path to a full path,
|
||||||
with backward (\) slashes).
|
with backward (\) slashes).
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorUtils.FullPathToADBPath(System.String)">
|
<member name="M:DG.DOTweenEditor.EditorUtils.FullPathToADBPath(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
Converts the given full path to a path usable with AssetDatabase methods
|
Converts the given full path to a path usable with AssetDatabase methods
|
||||||
(relative to Unity's project folder, and with the correct Unity forward (/) slashes).
|
(relative to Unity's project folder, and with the correct Unity forward (/) slashes).
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorUtils.ConnectToSourceAsset``1(System.String,System.Boolean)">
|
<member name="M:DG.DOTweenEditor.EditorUtils.ConnectToSourceAsset``1(System.String,System.Boolean)">
|
||||||
<summary>
|
<summary>
|
||||||
Connects to a <see cref="T:UnityEngine.ScriptableObject"/> asset.
|
Connects to a <see cref="T:UnityEngine.ScriptableObject"/> asset.
|
||||||
If the asset already exists at the given path, loads it and returns it.
|
If the asset already exists at the given path, loads it and returns it.
|
||||||
Otherwise, either returns NULL or automatically creates it before loading and returning it
|
Otherwise, either returns NULL or automatically creates it before loading and returning it
|
||||||
(depending on the given parameters).
|
(depending on the given parameters).
|
||||||
</summary>
|
</summary>
|
||||||
<typeparam name="T">Asset type</typeparam>
|
<typeparam name="T">Asset type</typeparam>
|
||||||
<param name="adbFilePath">File path (relative to Unity's project folder)</param>
|
<param name="adbFilePath">File path (relative to Unity's project folder)</param>
|
||||||
<param name="createIfMissing">If TRUE and the requested asset doesn't exist, forces its creation</param>
|
<param name="createIfMissing">If TRUE and the requested asset doesn't exist, forces its creation</param>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorUtils.GetAssemblyFilePath(System.Reflection.Assembly)">
|
<member name="M:DG.DOTweenEditor.EditorUtils.GetAssemblyFilePath(System.Reflection.Assembly)">
|
||||||
<summary>
|
<summary>
|
||||||
Full path for the given loaded assembly, assembly file included
|
Full path for the given loaded assembly, assembly file included
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorUtils.AddGlobalDefine(System.String)">
|
<member name="M:DG.DOTweenEditor.EditorUtils.AddGlobalDefine(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
Adds the given global define if it's not already present
|
Adds the given global define if it's not already present
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorUtils.RemoveGlobalDefine(System.String)">
|
<member name="M:DG.DOTweenEditor.EditorUtils.RemoveGlobalDefine(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
Removes the given global define if it's present
|
Removes the given global define if it's present
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:DG.DOTweenEditor.EditorUtils.HasGlobalDefine(System.String,System.Nullable{UnityEditor.BuildTargetGroup})">
|
<member name="M:DG.DOTweenEditor.EditorUtils.HasGlobalDefine(System.String,System.Nullable{UnityEditor.BuildTargetGroup})">
|
||||||
<summary>
|
<summary>
|
||||||
Returns TRUE if the given global define is present in all the <see cref="T:UnityEditor.BuildTargetGroup"/>
|
Returns TRUE if the given global define is present in all the <see cref="T:UnityEditor.BuildTargetGroup"/>
|
||||||
or only in the given <see cref="T:UnityEditor.BuildTargetGroup"/>, depending on passed parameters.<para/>
|
or only in the given <see cref="T:UnityEditor.BuildTargetGroup"/>, depending on passed parameters.<para/>
|
||||||
</summary>
|
</summary>
|
||||||
<param name="id"></param>
|
<param name="id"></param>
|
||||||
<param name="buildTargetGroup"><see cref="T:UnityEditor.BuildTargetGroup"/>to use. Leave NULL to check in all of them.</param>
|
<param name="buildTargetGroup"><see cref="T:UnityEditor.BuildTargetGroup"/>to use. Leave NULL to check in all of them.</param>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:DG.DOTweenEditor.DOTweenDefines">
|
<member name="T:DG.DOTweenEditor.DOTweenDefines">
|
||||||
<summary>
|
<summary>
|
||||||
Not used as menu item anymore, but as a utility function
|
Not used as menu item anymore, but as a utility function
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:DG.DOTweenEditor.UnityEditorVersion.Version">
|
<member name="F:DG.DOTweenEditor.UnityEditorVersion.Version">
|
||||||
<summary>Full major version + first minor version (ex: 2018.1f)</summary>
|
<summary>Full major version + first minor version (ex: 2018.1f)</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:DG.DOTweenEditor.UnityEditorVersion.MajorVersion">
|
<member name="F:DG.DOTweenEditor.UnityEditorVersion.MajorVersion">
|
||||||
<summary>Major version</summary>
|
<summary>Major version</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:DG.DOTweenEditor.UnityEditorVersion.MinorVersion">
|
<member name="F:DG.DOTweenEditor.UnityEditorVersion.MinorVersion">
|
||||||
<summary>First minor version (ex: in 2018.1 it would be 1)</summary>
|
<summary>First minor version (ex: in 2018.1 it would be 1)</summary>
|
||||||
</member>
|
</member>
|
||||||
</members>
|
</members>
|
||||||
</doc>
|
</doc>
|
||||||
|
|||||||
@@ -0,0 +1,14 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<doc>
|
||||||
|
<assembly>
|
||||||
|
<name>DOTweenUpgradeManager</name>
|
||||||
|
</assembly>
|
||||||
|
<members>
|
||||||
|
<member name="T:DG.DOTweenUpgradeManager.Autorun">
|
||||||
|
<summary>
|
||||||
|
This class and its whole library are deleted the first time DOTween's setup is run after an upgrade (or after a new install).
|
||||||
|
NOTE: DidReloadScripts doesn't work on first install so it's useless, InitializeOnLoad is the only way
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
</members>
|
||||||
|
</doc>
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3df9fdaadcb4c394e826a4d8d20bb952
|
||||||
|
TextScriptImporter:
|
||||||
|
userData:
|
||||||
|
AssetOrigin:
|
||||||
|
serializedVersion: 1
|
||||||
|
productId: 27676
|
||||||
|
packageName: DOTween (HOTween v2)
|
||||||
|
packageVersion: 1.2.790
|
||||||
|
assetPath: Assets/Plugins/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML
|
||||||
|
uploadId: 831234
|
||||||
Binary file not shown.
@@ -0,0 +1,29 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 2bf936a5d80799e4e88ec9270fea75a4
|
||||||
|
PluginImporter:
|
||||||
|
serializedVersion: 1
|
||||||
|
iconMap: {}
|
||||||
|
executionOrder: {}
|
||||||
|
isPreloaded: 0
|
||||||
|
platformData:
|
||||||
|
Any:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
Editor:
|
||||||
|
enabled: 1
|
||||||
|
settings:
|
||||||
|
DefaultValueInitialized: true
|
||||||
|
WindowsStoreApps:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
AssetOrigin:
|
||||||
|
serializedVersion: 1
|
||||||
|
productId: 27676
|
||||||
|
packageName: DOTween (HOTween v2)
|
||||||
|
packageVersion: 1.2.790
|
||||||
|
assetPath: Assets/Plugins/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll
|
||||||
|
uploadId: 831234
|
||||||
@@ -1,198 +1,198 @@
|
|||||||
// Author: Daniele Giardini - http://www.demigiant.com
|
// Author: Daniele Giardini - http://www.demigiant.com
|
||||||
// Created: 2018/07/13
|
// Created: 2018/07/13
|
||||||
|
|
||||||
#if true // MODULE_MARKER
|
#if true // MODULE_MARKER
|
||||||
using System;
|
using System;
|
||||||
using DG.Tweening.Core;
|
using DG.Tweening.Core;
|
||||||
using DG.Tweening.Plugins.Options;
|
using DG.Tweening.Plugins.Options;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.Audio; // Required for AudioMixer
|
using UnityEngine.Audio; // Required for AudioMixer
|
||||||
|
|
||||||
#pragma warning disable 1591
|
#pragma warning disable 1591
|
||||||
namespace DG.Tweening
|
namespace DG.Tweening
|
||||||
{
|
{
|
||||||
public static class DOTweenModuleAudio
|
public static class DOTweenModuleAudio
|
||||||
{
|
{
|
||||||
#region Shortcuts
|
#region Shortcuts
|
||||||
|
|
||||||
#region Audio
|
#region Audio
|
||||||
|
|
||||||
/// <summary>Tweens an AudioSource's volume to the given value.
|
/// <summary>Tweens an AudioSource's volume to the given value.
|
||||||
/// Also stores the AudioSource as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the AudioSource as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach (0 to 1)</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach (0 to 1)</param><param name="duration">The duration of the tween</param>
|
||||||
public static TweenerCore<float, float, FloatOptions> DOFade(this AudioSource target, float endValue, float duration)
|
public static TweenerCore<float, float, FloatOptions> DOFade(this AudioSource target, float endValue, float duration)
|
||||||
{
|
{
|
||||||
if (endValue < 0) endValue = 0;
|
if (endValue < 0) endValue = 0;
|
||||||
else if (endValue > 1) endValue = 1;
|
else if (endValue > 1) endValue = 1;
|
||||||
TweenerCore<float, float, FloatOptions> t = DOTween.To(() => target.volume, x => target.volume = x, endValue, duration);
|
TweenerCore<float, float, FloatOptions> t = DOTween.To(() => target.volume, x => target.volume = x, endValue, duration);
|
||||||
t.SetTarget(target);
|
t.SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens an AudioSource's pitch to the given value.
|
/// <summary>Tweens an AudioSource's pitch to the given value.
|
||||||
/// Also stores the AudioSource as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the AudioSource as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
public static TweenerCore<float, float, FloatOptions> DOPitch(this AudioSource target, float endValue, float duration)
|
public static TweenerCore<float, float, FloatOptions> DOPitch(this AudioSource target, float endValue, float duration)
|
||||||
{
|
{
|
||||||
TweenerCore<float, float, FloatOptions> t = DOTween.To(() => target.pitch, x => target.pitch = x, endValue, duration);
|
TweenerCore<float, float, FloatOptions> t = DOTween.To(() => target.pitch, x => target.pitch = x, endValue, duration);
|
||||||
t.SetTarget(target);
|
t.SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region AudioMixer
|
#region AudioMixer
|
||||||
|
|
||||||
/// <summary>Tweens an AudioMixer's exposed float to the given value.
|
/// <summary>Tweens an AudioMixer's exposed float to the given value.
|
||||||
/// Also stores the AudioMixer as the tween's target so it can be used for filtered operations.
|
/// Also stores the AudioMixer as the tween's target so it can be used for filtered operations.
|
||||||
/// Note that you need to manually expose a float in an AudioMixerGroup in order to be able to tween it from an AudioMixer.</summary>
|
/// Note that you need to manually expose a float in an AudioMixerGroup in order to be able to tween it from an AudioMixer.</summary>
|
||||||
/// <param name="floatName">Name given to the exposed float to set</param>
|
/// <param name="floatName">Name given to the exposed float to set</param>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
public static TweenerCore<float, float, FloatOptions> DOSetFloat(this AudioMixer target, string floatName, float endValue, float duration)
|
public static TweenerCore<float, float, FloatOptions> DOSetFloat(this AudioMixer target, string floatName, float endValue, float duration)
|
||||||
{
|
{
|
||||||
TweenerCore<float, float, FloatOptions> t = DOTween.To(()=> {
|
TweenerCore<float, float, FloatOptions> t = DOTween.To(()=> {
|
||||||
float currVal;
|
float currVal;
|
||||||
target.GetFloat(floatName, out currVal);
|
target.GetFloat(floatName, out currVal);
|
||||||
return currVal;
|
return currVal;
|
||||||
}, x=> target.SetFloat(floatName, x), endValue, duration);
|
}, x=> target.SetFloat(floatName, x), endValue, duration);
|
||||||
t.SetTarget(target);
|
t.SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
#region Operation Shortcuts
|
#region Operation Shortcuts
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Completes all tweens that have this target as a reference
|
/// Completes all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens completed
|
/// and returns the total number of tweens completed
|
||||||
/// (meaning the tweens that don't have infinite loops and were not already complete)
|
/// (meaning the tweens that don't have infinite loops and were not already complete)
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="withCallbacks">For Sequences only: if TRUE also internal Sequence callbacks will be fired,
|
/// <param name="withCallbacks">For Sequences only: if TRUE also internal Sequence callbacks will be fired,
|
||||||
/// otherwise they will be ignored</param>
|
/// otherwise they will be ignored</param>
|
||||||
public static int DOComplete(this AudioMixer target, bool withCallbacks = false)
|
public static int DOComplete(this AudioMixer target, bool withCallbacks = false)
|
||||||
{
|
{
|
||||||
return DOTween.Complete(target, withCallbacks);
|
return DOTween.Complete(target, withCallbacks);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Kills all tweens that have this target as a reference
|
/// Kills all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens killed.
|
/// and returns the total number of tweens killed.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="complete">If TRUE completes the tween before killing it</param>
|
/// <param name="complete">If TRUE completes the tween before killing it</param>
|
||||||
public static int DOKill(this AudioMixer target, bool complete = false)
|
public static int DOKill(this AudioMixer target, bool complete = false)
|
||||||
{
|
{
|
||||||
return DOTween.Kill(target, complete);
|
return DOTween.Kill(target, complete);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Flips the direction (backwards if it was going forward or viceversa) of all tweens that have this target as a reference
|
/// Flips the direction (backwards if it was going forward or viceversa) of all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens flipped.
|
/// and returns the total number of tweens flipped.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static int DOFlip(this AudioMixer target)
|
public static int DOFlip(this AudioMixer target)
|
||||||
{
|
{
|
||||||
return DOTween.Flip(target);
|
return DOTween.Flip(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Sends to the given position all tweens that have this target as a reference
|
/// Sends to the given position all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens involved.
|
/// and returns the total number of tweens involved.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="to">Time position to reach
|
/// <param name="to">Time position to reach
|
||||||
/// (if higher than the whole tween duration the tween will simply reach its end)</param>
|
/// (if higher than the whole tween duration the tween will simply reach its end)</param>
|
||||||
/// <param name="andPlay">If TRUE will play the tween after reaching the given position, otherwise it will pause it</param>
|
/// <param name="andPlay">If TRUE will play the tween after reaching the given position, otherwise it will pause it</param>
|
||||||
public static int DOGoto(this AudioMixer target, float to, bool andPlay = false)
|
public static int DOGoto(this AudioMixer target, float to, bool andPlay = false)
|
||||||
{
|
{
|
||||||
return DOTween.Goto(target, to, andPlay);
|
return DOTween.Goto(target, to, andPlay);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Pauses all tweens that have this target as a reference
|
/// Pauses all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens paused.
|
/// and returns the total number of tweens paused.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static int DOPause(this AudioMixer target)
|
public static int DOPause(this AudioMixer target)
|
||||||
{
|
{
|
||||||
return DOTween.Pause(target);
|
return DOTween.Pause(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Plays all tweens that have this target as a reference
|
/// Plays all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens played.
|
/// and returns the total number of tweens played.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static int DOPlay(this AudioMixer target)
|
public static int DOPlay(this AudioMixer target)
|
||||||
{
|
{
|
||||||
return DOTween.Play(target);
|
return DOTween.Play(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Plays backwards all tweens that have this target as a reference
|
/// Plays backwards all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens played.
|
/// and returns the total number of tweens played.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static int DOPlayBackwards(this AudioMixer target)
|
public static int DOPlayBackwards(this AudioMixer target)
|
||||||
{
|
{
|
||||||
return DOTween.PlayBackwards(target);
|
return DOTween.PlayBackwards(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Plays forward all tweens that have this target as a reference
|
/// Plays forward all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens played.
|
/// and returns the total number of tweens played.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static int DOPlayForward(this AudioMixer target)
|
public static int DOPlayForward(this AudioMixer target)
|
||||||
{
|
{
|
||||||
return DOTween.PlayForward(target);
|
return DOTween.PlayForward(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Restarts all tweens that have this target as a reference
|
/// Restarts all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens restarted.
|
/// and returns the total number of tweens restarted.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static int DORestart(this AudioMixer target)
|
public static int DORestart(this AudioMixer target)
|
||||||
{
|
{
|
||||||
return DOTween.Restart(target);
|
return DOTween.Restart(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Rewinds all tweens that have this target as a reference
|
/// Rewinds all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens rewinded.
|
/// and returns the total number of tweens rewinded.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static int DORewind(this AudioMixer target)
|
public static int DORewind(this AudioMixer target)
|
||||||
{
|
{
|
||||||
return DOTween.Rewind(target);
|
return DOTween.Rewind(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Smoothly rewinds all tweens that have this target as a reference
|
/// Smoothly rewinds all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens rewinded.
|
/// and returns the total number of tweens rewinded.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static int DOSmoothRewind(this AudioMixer target)
|
public static int DOSmoothRewind(this AudioMixer target)
|
||||||
{
|
{
|
||||||
return DOTween.SmoothRewind(target);
|
return DOTween.SmoothRewind(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Toggles the paused state (plays if it was paused, pauses if it was playing) of all tweens that have this target as a reference
|
/// Toggles the paused state (plays if it was paused, pauses if it was playing) of all tweens that have this target as a reference
|
||||||
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
/// (meaning tweens that were started from this target, or that had this target added as an Id)
|
||||||
/// and returns the total number of tweens involved.
|
/// and returns the total number of tweens involved.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static int DOTogglePause(this AudioMixer target)
|
public static int DOTogglePause(this AudioMixer target)
|
||||||
{
|
{
|
||||||
return DOTween.TogglePause(target);
|
return DOTween.TogglePause(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -1,146 +1,146 @@
|
|||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
#if false || EPO_DOTWEEN // MODULE_MARKER
|
#if false || EPO_DOTWEEN // MODULE_MARKER
|
||||||
|
|
||||||
using EPOOutline;
|
using EPOOutline;
|
||||||
using DG.Tweening.Plugins.Options;
|
using DG.Tweening.Plugins.Options;
|
||||||
using DG.Tweening;
|
using DG.Tweening;
|
||||||
using DG.Tweening.Core;
|
using DG.Tweening.Core;
|
||||||
|
|
||||||
namespace DG.Tweening
|
namespace DG.Tweening
|
||||||
{
|
{
|
||||||
public static class DOTweenModuleEPOOutline
|
public static class DOTweenModuleEPOOutline
|
||||||
{
|
{
|
||||||
public static int DOKill(this SerializedPass target, bool complete)
|
public static int DOKill(this SerializedPass target, bool complete)
|
||||||
{
|
{
|
||||||
return DOTween.Kill(target, complete);
|
return DOTween.Kill(target, complete);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TweenerCore<float, float, FloatOptions> DOFloat(this SerializedPass target, string propertyName, float endValue, float duration)
|
public static TweenerCore<float, float, FloatOptions> DOFloat(this SerializedPass target, string propertyName, float endValue, float duration)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.GetFloat(propertyName), x => target.SetFloat(propertyName, x), endValue, duration);
|
var tweener = DOTween.To(() => target.GetFloat(propertyName), x => target.SetFloat(propertyName, x), endValue, duration);
|
||||||
tweener.SetOptions(true).SetTarget(target);
|
tweener.SetOptions(true).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TweenerCore<Color, Color, ColorOptions> DOFade(this SerializedPass target, string propertyName, float endValue, float duration)
|
public static TweenerCore<Color, Color, ColorOptions> DOFade(this SerializedPass target, string propertyName, float endValue, float duration)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.ToAlpha(() => target.GetColor(propertyName), x => target.SetColor(propertyName, x), endValue, duration);
|
var tweener = DOTween.ToAlpha(() => target.GetColor(propertyName), x => target.SetColor(propertyName, x), endValue, duration);
|
||||||
tweener.SetOptions(true).SetTarget(target);
|
tweener.SetOptions(true).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TweenerCore<Color, Color, ColorOptions> DOColor(this SerializedPass target, string propertyName, Color endValue, float duration)
|
public static TweenerCore<Color, Color, ColorOptions> DOColor(this SerializedPass target, string propertyName, Color endValue, float duration)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.GetColor(propertyName), x => target.SetColor(propertyName, x), endValue, duration);
|
var tweener = DOTween.To(() => target.GetColor(propertyName), x => target.SetColor(propertyName, x), endValue, duration);
|
||||||
tweener.SetOptions(false).SetTarget(target);
|
tweener.SetOptions(false).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TweenerCore<Vector4, Vector4, VectorOptions> DOVector(this SerializedPass target, string propertyName, Vector4 endValue, float duration)
|
public static TweenerCore<Vector4, Vector4, VectorOptions> DOVector(this SerializedPass target, string propertyName, Vector4 endValue, float duration)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.GetVector(propertyName), x => target.SetVector(propertyName, x), endValue, duration);
|
var tweener = DOTween.To(() => target.GetVector(propertyName), x => target.SetVector(propertyName, x), endValue, duration);
|
||||||
tweener.SetOptions(false).SetTarget(target);
|
tweener.SetOptions(false).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TweenerCore<float, float, FloatOptions> DOFloat(this SerializedPass target, int propertyId, float endValue, float duration)
|
public static TweenerCore<float, float, FloatOptions> DOFloat(this SerializedPass target, int propertyId, float endValue, float duration)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.GetFloat(propertyId), x => target.SetFloat(propertyId, x), endValue, duration);
|
var tweener = DOTween.To(() => target.GetFloat(propertyId), x => target.SetFloat(propertyId, x), endValue, duration);
|
||||||
tweener.SetOptions(true).SetTarget(target);
|
tweener.SetOptions(true).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TweenerCore<Color, Color, ColorOptions> DOFade(this SerializedPass target, int propertyId, float endValue, float duration)
|
public static TweenerCore<Color, Color, ColorOptions> DOFade(this SerializedPass target, int propertyId, float endValue, float duration)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.ToAlpha(() => target.GetColor(propertyId), x => target.SetColor(propertyId, x), endValue, duration);
|
var tweener = DOTween.ToAlpha(() => target.GetColor(propertyId), x => target.SetColor(propertyId, x), endValue, duration);
|
||||||
tweener.SetOptions(true).SetTarget(target);
|
tweener.SetOptions(true).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TweenerCore<Color, Color, ColorOptions> DOColor(this SerializedPass target, int propertyId, Color endValue, float duration)
|
public static TweenerCore<Color, Color, ColorOptions> DOColor(this SerializedPass target, int propertyId, Color endValue, float duration)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.GetColor(propertyId), x => target.SetColor(propertyId, x), endValue, duration);
|
var tweener = DOTween.To(() => target.GetColor(propertyId), x => target.SetColor(propertyId, x), endValue, duration);
|
||||||
tweener.SetOptions(false).SetTarget(target);
|
tweener.SetOptions(false).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TweenerCore<Vector4, Vector4, VectorOptions> DOVector(this SerializedPass target, int propertyId, Vector4 endValue, float duration)
|
public static TweenerCore<Vector4, Vector4, VectorOptions> DOVector(this SerializedPass target, int propertyId, Vector4 endValue, float duration)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.GetVector(propertyId), x => target.SetVector(propertyId, x), endValue, duration);
|
var tweener = DOTween.To(() => target.GetVector(propertyId), x => target.SetVector(propertyId, x), endValue, duration);
|
||||||
tweener.SetOptions(false).SetTarget(target);
|
tweener.SetOptions(false).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int DOKill(this Outlinable.OutlineProperties target, bool complete = false)
|
public static int DOKill(this Outlinable.OutlineProperties target, bool complete = false)
|
||||||
{
|
{
|
||||||
return DOTween.Kill(target, complete);
|
return DOTween.Kill(target, complete);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int DOKill(this Outliner target, bool complete = false)
|
public static int DOKill(this Outliner target, bool complete = false)
|
||||||
{
|
{
|
||||||
return DOTween.Kill(target, complete);
|
return DOTween.Kill(target, complete);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Controls the alpha (transparency) of the outline
|
/// Controls the alpha (transparency) of the outline
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static TweenerCore<Color, Color, ColorOptions> DOFade(this Outlinable.OutlineProperties target, float endValue, float duration)
|
public static TweenerCore<Color, Color, ColorOptions> DOFade(this Outlinable.OutlineProperties target, float endValue, float duration)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.ToAlpha(() => target.Color, x => target.Color = x, endValue, duration);
|
var tweener = DOTween.ToAlpha(() => target.Color, x => target.Color = x, endValue, duration);
|
||||||
tweener.SetOptions(true).SetTarget(target);
|
tweener.SetOptions(true).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Controls the color of the outline
|
/// Controls the color of the outline
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static TweenerCore<Color, Color, ColorOptions> DOColor(this Outlinable.OutlineProperties target, Color endValue, float duration)
|
public static TweenerCore<Color, Color, ColorOptions> DOColor(this Outlinable.OutlineProperties target, Color endValue, float duration)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.Color, x => target.Color = x, endValue, duration);
|
var tweener = DOTween.To(() => target.Color, x => target.Color = x, endValue, duration);
|
||||||
tweener.SetOptions(false).SetTarget(target);
|
tweener.SetOptions(false).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Controls the amount of blur applied to the outline
|
/// Controls the amount of blur applied to the outline
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static TweenerCore<float, float, FloatOptions> DOBlurShift(this Outlinable.OutlineProperties target, float endValue, float duration, bool snapping = false)
|
public static TweenerCore<float, float, FloatOptions> DOBlurShift(this Outlinable.OutlineProperties target, float endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.BlurShift, x => target.BlurShift = x, endValue, duration);
|
var tweener = DOTween.To(() => target.BlurShift, x => target.BlurShift = x, endValue, duration);
|
||||||
tweener.SetOptions(snapping).SetTarget(target);
|
tweener.SetOptions(snapping).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Controls the amount of blur applied to the outline
|
/// Controls the amount of blur applied to the outline
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static TweenerCore<float, float, FloatOptions> DOBlurShift(this Outliner target, float endValue, float duration, bool snapping = false)
|
public static TweenerCore<float, float, FloatOptions> DOBlurShift(this Outliner target, float endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.BlurShift, x => target.BlurShift = x, endValue, duration);
|
var tweener = DOTween.To(() => target.BlurShift, x => target.BlurShift = x, endValue, duration);
|
||||||
tweener.SetOptions(snapping).SetTarget(target);
|
tweener.SetOptions(snapping).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Controls the amount of dilation applied to the outline
|
/// Controls the amount of dilation applied to the outline
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static TweenerCore<float, float, FloatOptions> DODilateShift(this Outlinable.OutlineProperties target, float endValue, float duration, bool snapping = false)
|
public static TweenerCore<float, float, FloatOptions> DODilateShift(this Outlinable.OutlineProperties target, float endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.DilateShift, x => target.DilateShift = x, endValue, duration);
|
var tweener = DOTween.To(() => target.DilateShift, x => target.DilateShift = x, endValue, duration);
|
||||||
tweener.SetOptions(snapping).SetTarget(target);
|
tweener.SetOptions(snapping).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Controls the amount of dilation applied to the outline
|
/// Controls the amount of dilation applied to the outline
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static TweenerCore<float, float, FloatOptions> DODilateShift(this Outliner target, float endValue, float duration, bool snapping = false)
|
public static TweenerCore<float, float, FloatOptions> DODilateShift(this Outliner target, float endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
var tweener = DOTween.To(() => target.DilateShift, x => target.DilateShift = x, endValue, duration);
|
var tweener = DOTween.To(() => target.DilateShift, x => target.DilateShift = x, endValue, duration);
|
||||||
tweener.SetOptions(snapping).SetTarget(target);
|
tweener.SetOptions(snapping).SetTarget(target);
|
||||||
return tweener;
|
return tweener;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -1,216 +1,216 @@
|
|||||||
// Author: Daniele Giardini - http://www.demigiant.com
|
// Author: Daniele Giardini - http://www.demigiant.com
|
||||||
// Created: 2018/07/13
|
// Created: 2018/07/13
|
||||||
|
|
||||||
#if true // MODULE_MARKER
|
#if true // MODULE_MARKER
|
||||||
using System;
|
using System;
|
||||||
using DG.Tweening.Core;
|
using DG.Tweening.Core;
|
||||||
using DG.Tweening.Core.Enums;
|
using DG.Tweening.Core.Enums;
|
||||||
using DG.Tweening.Plugins;
|
using DG.Tweening.Plugins;
|
||||||
using DG.Tweening.Plugins.Core.PathCore;
|
using DG.Tweening.Plugins.Core.PathCore;
|
||||||
using DG.Tweening.Plugins.Options;
|
using DG.Tweening.Plugins.Options;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
#pragma warning disable 1591
|
#pragma warning disable 1591
|
||||||
namespace DG.Tweening
|
namespace DG.Tweening
|
||||||
{
|
{
|
||||||
public static class DOTweenModulePhysics
|
public static class DOTweenModulePhysics
|
||||||
{
|
{
|
||||||
#region Shortcuts
|
#region Shortcuts
|
||||||
|
|
||||||
#region Rigidbody
|
#region Rigidbody
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody's position to the given value.
|
/// <summary>Tweens a Rigidbody's position to the given value.
|
||||||
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
||||||
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMove(this Rigidbody target, Vector3 endValue, float duration, bool snapping = false)
|
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMove(this Rigidbody target, Vector3 endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
TweenerCore<Vector3, Vector3, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, endValue, duration);
|
TweenerCore<Vector3, Vector3, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, endValue, duration);
|
||||||
t.SetOptions(snapping).SetTarget(target);
|
t.SetOptions(snapping).SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody's X position to the given value.
|
/// <summary>Tweens a Rigidbody's X position to the given value.
|
||||||
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
||||||
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMoveX(this Rigidbody target, float endValue, float duration, bool snapping = false)
|
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMoveX(this Rigidbody target, float endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
TweenerCore<Vector3, Vector3, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, new Vector3(endValue, 0, 0), duration);
|
TweenerCore<Vector3, Vector3, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, new Vector3(endValue, 0, 0), duration);
|
||||||
t.SetOptions(AxisConstraint.X, snapping).SetTarget(target);
|
t.SetOptions(AxisConstraint.X, snapping).SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody's Y position to the given value.
|
/// <summary>Tweens a Rigidbody's Y position to the given value.
|
||||||
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
||||||
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMoveY(this Rigidbody target, float endValue, float duration, bool snapping = false)
|
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMoveY(this Rigidbody target, float endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
TweenerCore<Vector3, Vector3, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, endValue, 0), duration);
|
TweenerCore<Vector3, Vector3, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, endValue, 0), duration);
|
||||||
t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target);
|
t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody's Z position to the given value.
|
/// <summary>Tweens a Rigidbody's Z position to the given value.
|
||||||
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
||||||
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMoveZ(this Rigidbody target, float endValue, float duration, bool snapping = false)
|
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMoveZ(this Rigidbody target, float endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
TweenerCore<Vector3, Vector3, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, 0, endValue), duration);
|
TweenerCore<Vector3, Vector3, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, 0, endValue), duration);
|
||||||
t.SetOptions(AxisConstraint.Z, snapping).SetTarget(target);
|
t.SetOptions(AxisConstraint.Z, snapping).SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody's rotation to the given value.
|
/// <summary>Tweens a Rigidbody's rotation to the given value.
|
||||||
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
/// <param name="mode">Rotation mode</param>
|
/// <param name="mode">Rotation mode</param>
|
||||||
public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DORotate(this Rigidbody target, Vector3 endValue, float duration, RotateMode mode = RotateMode.Fast)
|
public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DORotate(this Rigidbody target, Vector3 endValue, float duration, RotateMode mode = RotateMode.Fast)
|
||||||
{
|
{
|
||||||
TweenerCore<Quaternion, Vector3, QuaternionOptions> t = DOTween.To(() => target.rotation, target.MoveRotation, endValue, duration);
|
TweenerCore<Quaternion, Vector3, QuaternionOptions> t = DOTween.To(() => target.rotation, target.MoveRotation, endValue, duration);
|
||||||
t.SetTarget(target);
|
t.SetTarget(target);
|
||||||
t.plugOptions.rotateMode = mode;
|
t.plugOptions.rotateMode = mode;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody's rotation so that it will look towards the given position.
|
/// <summary>Tweens a Rigidbody's rotation so that it will look towards the given position.
|
||||||
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the rigidbody as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="towards">The position to look at</param><param name="duration">The duration of the tween</param>
|
/// <param name="towards">The position to look at</param><param name="duration">The duration of the tween</param>
|
||||||
/// <param name="axisConstraint">Eventual axis constraint for the rotation</param>
|
/// <param name="axisConstraint">Eventual axis constraint for the rotation</param>
|
||||||
/// <param name="up">The vector that defines in which direction up is (default: Vector3.up)</param>
|
/// <param name="up">The vector that defines in which direction up is (default: Vector3.up)</param>
|
||||||
public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DOLookAt(this Rigidbody target, Vector3 towards, float duration, AxisConstraint axisConstraint = AxisConstraint.None, Vector3? up = null)
|
public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DOLookAt(this Rigidbody target, Vector3 towards, float duration, AxisConstraint axisConstraint = AxisConstraint.None, Vector3? up = null)
|
||||||
{
|
{
|
||||||
TweenerCore<Quaternion, Vector3, QuaternionOptions> t = DOTween.To(() => target.rotation, target.MoveRotation, towards, duration)
|
TweenerCore<Quaternion, Vector3, QuaternionOptions> t = DOTween.To(() => target.rotation, target.MoveRotation, towards, duration)
|
||||||
.SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetLookAt);
|
.SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetLookAt);
|
||||||
t.plugOptions.axisConstraint = axisConstraint;
|
t.plugOptions.axisConstraint = axisConstraint;
|
||||||
t.plugOptions.up = (up == null) ? Vector3.up : (Vector3)up;
|
t.plugOptions.up = (up == null) ? Vector3.up : (Vector3)up;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
#region Special
|
#region Special
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody's position to the given value, while also applying a jump effect along the Y axis.
|
/// <summary>Tweens a Rigidbody's position to the given value, while also applying a jump effect along the Y axis.
|
||||||
/// Returns a Sequence instead of a Tweener.
|
/// Returns a Sequence instead of a Tweener.
|
||||||
/// Also stores the Rigidbody as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the Rigidbody as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param>
|
/// <param name="endValue">The end value to reach</param>
|
||||||
/// <param name="jumpPower">Power of the jump (the max height of the jump is represented by this plus the final Y offset)</param>
|
/// <param name="jumpPower">Power of the jump (the max height of the jump is represented by this plus the final Y offset)</param>
|
||||||
/// <param name="numJumps">Total number of jumps</param>
|
/// <param name="numJumps">Total number of jumps</param>
|
||||||
/// <param name="duration">The duration of the tween</param>
|
/// <param name="duration">The duration of the tween</param>
|
||||||
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
||||||
public static Sequence DOJump(this Rigidbody target, Vector3 endValue, float jumpPower, int numJumps, float duration, bool snapping = false)
|
public static Sequence DOJump(this Rigidbody target, Vector3 endValue, float jumpPower, int numJumps, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
if (numJumps < 1) numJumps = 1;
|
if (numJumps < 1) numJumps = 1;
|
||||||
float startPosY = 0;
|
float startPosY = 0;
|
||||||
float offsetY = -1;
|
float offsetY = -1;
|
||||||
bool offsetYSet = false;
|
bool offsetYSet = false;
|
||||||
Sequence s = DOTween.Sequence();
|
Sequence s = DOTween.Sequence();
|
||||||
Tween yTween = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, jumpPower, 0), duration / (numJumps * 2))
|
Tween yTween = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, jumpPower, 0), duration / (numJumps * 2))
|
||||||
.SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative()
|
.SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative()
|
||||||
.SetLoops(numJumps * 2, LoopType.Yoyo)
|
.SetLoops(numJumps * 2, LoopType.Yoyo)
|
||||||
.OnStart(() => startPosY = target.position.y);
|
.OnStart(() => startPosY = target.position.y);
|
||||||
s.Append(DOTween.To(() => target.position, target.MovePosition, new Vector3(endValue.x, 0, 0), duration)
|
s.Append(DOTween.To(() => target.position, target.MovePosition, new Vector3(endValue.x, 0, 0), duration)
|
||||||
.SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear)
|
.SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear)
|
||||||
).Join(DOTween.To(() => target.position, target.MovePosition, new Vector3(0, 0, endValue.z), duration)
|
).Join(DOTween.To(() => target.position, target.MovePosition, new Vector3(0, 0, endValue.z), duration)
|
||||||
.SetOptions(AxisConstraint.Z, snapping).SetEase(Ease.Linear)
|
.SetOptions(AxisConstraint.Z, snapping).SetEase(Ease.Linear)
|
||||||
).Join(yTween)
|
).Join(yTween)
|
||||||
.SetTarget(target).SetEase(DOTween.defaultEaseType);
|
.SetTarget(target).SetEase(DOTween.defaultEaseType);
|
||||||
yTween.OnUpdate(() => {
|
yTween.OnUpdate(() => {
|
||||||
if (!offsetYSet) {
|
if (!offsetYSet) {
|
||||||
offsetYSet = true;
|
offsetYSet = true;
|
||||||
offsetY = s.isRelative ? endValue.y : endValue.y - startPosY;
|
offsetY = s.isRelative ? endValue.y : endValue.y - startPosY;
|
||||||
}
|
}
|
||||||
Vector3 pos = target.position;
|
Vector3 pos = target.position;
|
||||||
pos.y += DOVirtual.EasedValue(0, offsetY, yTween.ElapsedPercentage(), Ease.OutQuad);
|
pos.y += DOVirtual.EasedValue(0, offsetY, yTween.ElapsedPercentage(), Ease.OutQuad);
|
||||||
target.MovePosition(pos);
|
target.MovePosition(pos);
|
||||||
});
|
});
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody's position through the given path waypoints, using the chosen path algorithm.
|
/// <summary>Tweens a Rigidbody's position through the given path waypoints, using the chosen path algorithm.
|
||||||
/// Also stores the Rigidbody as the tween's target so it can be used for filtered operations.
|
/// Also stores the Rigidbody as the tween's target so it can be used for filtered operations.
|
||||||
/// <para>NOTE: to tween a rigidbody correctly it should be set to kinematic at least while being tweened.</para>
|
/// <para>NOTE: to tween a rigidbody correctly it should be set to kinematic at least while being tweened.</para>
|
||||||
/// <para>BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug).
|
/// <para>BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug).
|
||||||
/// If you plan to publish there you should use a regular transform.DOPath.</para></summary>
|
/// If you plan to publish there you should use a regular transform.DOPath.</para></summary>
|
||||||
/// <param name="path">The waypoints to go through</param>
|
/// <param name="path">The waypoints to go through</param>
|
||||||
/// <param name="duration">The duration of the tween</param>
|
/// <param name="duration">The duration of the tween</param>
|
||||||
/// <param name="pathType">The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points)</param>
|
/// <param name="pathType">The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points)</param>
|
||||||
/// <param name="pathMode">The path mode: 3D, side-scroller 2D, top-down 2D</param>
|
/// <param name="pathMode">The path mode: 3D, side-scroller 2D, top-down 2D</param>
|
||||||
/// <param name="resolution">The resolution of the path (useless in case of Linear paths): higher resolutions make for more detailed curved paths but are more expensive.
|
/// <param name="resolution">The resolution of the path (useless in case of Linear paths): higher resolutions make for more detailed curved paths but are more expensive.
|
||||||
/// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints</param>
|
/// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints</param>
|
||||||
/// <param name="gizmoColor">The color of the path (shown when gizmos are active in the Play panel and the tween is running)</param>
|
/// <param name="gizmoColor">The color of the path (shown when gizmos are active in the Play panel and the tween is running)</param>
|
||||||
public static TweenerCore<Vector3, Path, PathOptions> DOPath(
|
public static TweenerCore<Vector3, Path, PathOptions> DOPath(
|
||||||
this Rigidbody target, Vector3[] path, float duration, PathType pathType = PathType.Linear,
|
this Rigidbody target, Vector3[] path, float duration, PathType pathType = PathType.Linear,
|
||||||
PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null
|
PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
if (resolution < 1) resolution = 1;
|
if (resolution < 1) resolution = 1;
|
||||||
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => target.position, target.MovePosition, new Path(pathType, path, resolution, gizmoColor), duration)
|
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => target.position, target.MovePosition, new Path(pathType, path, resolution, gizmoColor), duration)
|
||||||
.SetTarget(target).SetUpdate(UpdateType.Fixed);
|
.SetTarget(target).SetUpdate(UpdateType.Fixed);
|
||||||
|
|
||||||
t.plugOptions.isRigidbody = true;
|
t.plugOptions.isRigidbody = true;
|
||||||
t.plugOptions.mode = pathMode;
|
t.plugOptions.mode = pathMode;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
/// <summary>Tweens a Rigidbody's localPosition through the given path waypoints, using the chosen path algorithm.
|
/// <summary>Tweens a Rigidbody's localPosition through the given path waypoints, using the chosen path algorithm.
|
||||||
/// Also stores the Rigidbody as the tween's target so it can be used for filtered operations
|
/// Also stores the Rigidbody as the tween's target so it can be used for filtered operations
|
||||||
/// <para>NOTE: to tween a rigidbody correctly it should be set to kinematic at least while being tweened.</para>
|
/// <para>NOTE: to tween a rigidbody correctly it should be set to kinematic at least while being tweened.</para>
|
||||||
/// <para>BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug).
|
/// <para>BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug).
|
||||||
/// If you plan to publish there you should use a regular transform.DOLocalPath.</para></summary>
|
/// If you plan to publish there you should use a regular transform.DOLocalPath.</para></summary>
|
||||||
/// <param name="path">The waypoint to go through</param>
|
/// <param name="path">The waypoint to go through</param>
|
||||||
/// <param name="duration">The duration of the tween</param>
|
/// <param name="duration">The duration of the tween</param>
|
||||||
/// <param name="pathType">The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points)</param>
|
/// <param name="pathType">The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points)</param>
|
||||||
/// <param name="pathMode">The path mode: 3D, side-scroller 2D, top-down 2D</param>
|
/// <param name="pathMode">The path mode: 3D, side-scroller 2D, top-down 2D</param>
|
||||||
/// <param name="resolution">The resolution of the path: higher resolutions make for more detailed curved paths but are more expensive.
|
/// <param name="resolution">The resolution of the path: higher resolutions make for more detailed curved paths but are more expensive.
|
||||||
/// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints</param>
|
/// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints</param>
|
||||||
/// <param name="gizmoColor">The color of the path (shown when gizmos are active in the Play panel and the tween is running)</param>
|
/// <param name="gizmoColor">The color of the path (shown when gizmos are active in the Play panel and the tween is running)</param>
|
||||||
public static TweenerCore<Vector3, Path, PathOptions> DOLocalPath(
|
public static TweenerCore<Vector3, Path, PathOptions> DOLocalPath(
|
||||||
this Rigidbody target, Vector3[] path, float duration, PathType pathType = PathType.Linear,
|
this Rigidbody target, Vector3[] path, float duration, PathType pathType = PathType.Linear,
|
||||||
PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null
|
PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
if (resolution < 1) resolution = 1;
|
if (resolution < 1) resolution = 1;
|
||||||
Transform trans = target.transform;
|
Transform trans = target.transform;
|
||||||
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), new Path(pathType, path, resolution, gizmoColor), duration)
|
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), new Path(pathType, path, resolution, gizmoColor), duration)
|
||||||
.SetTarget(target).SetUpdate(UpdateType.Fixed);
|
.SetTarget(target).SetUpdate(UpdateType.Fixed);
|
||||||
|
|
||||||
t.plugOptions.isRigidbody = true;
|
t.plugOptions.isRigidbody = true;
|
||||||
t.plugOptions.mode = pathMode;
|
t.plugOptions.mode = pathMode;
|
||||||
t.plugOptions.useLocalPosition = true;
|
t.plugOptions.useLocalPosition = true;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
// Used by path editor when creating the actual tween, so it can pass a pre-compiled path
|
// Used by path editor when creating the actual tween, so it can pass a pre-compiled path
|
||||||
internal static TweenerCore<Vector3, Path, PathOptions> DOPath(
|
internal static TweenerCore<Vector3, Path, PathOptions> DOPath(
|
||||||
this Rigidbody target, Path path, float duration, PathMode pathMode = PathMode.Full3D
|
this Rigidbody target, Path path, float duration, PathMode pathMode = PathMode.Full3D
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => target.position, target.MovePosition, path, duration)
|
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => target.position, target.MovePosition, path, duration)
|
||||||
.SetTarget(target);
|
.SetTarget(target);
|
||||||
|
|
||||||
t.plugOptions.isRigidbody = true;
|
t.plugOptions.isRigidbody = true;
|
||||||
t.plugOptions.mode = pathMode;
|
t.plugOptions.mode = pathMode;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
internal static TweenerCore<Vector3, Path, PathOptions> DOLocalPath(
|
internal static TweenerCore<Vector3, Path, PathOptions> DOLocalPath(
|
||||||
this Rigidbody target, Path path, float duration, PathMode pathMode = PathMode.Full3D
|
this Rigidbody target, Path path, float duration, PathMode pathMode = PathMode.Full3D
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
Transform trans = target.transform;
|
Transform trans = target.transform;
|
||||||
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), path, duration)
|
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), path, duration)
|
||||||
.SetTarget(target);
|
.SetTarget(target);
|
||||||
|
|
||||||
t.plugOptions.isRigidbody = true;
|
t.plugOptions.isRigidbody = true;
|
||||||
t.plugOptions.mode = pathMode;
|
t.plugOptions.mode = pathMode;
|
||||||
t.plugOptions.useLocalPosition = true;
|
t.plugOptions.useLocalPosition = true;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -1,193 +1,193 @@
|
|||||||
// Author: Daniele Giardini - http://www.demigiant.com
|
// Author: Daniele Giardini - http://www.demigiant.com
|
||||||
// Created: 2018/07/13
|
// Created: 2018/07/13
|
||||||
|
|
||||||
#if true // MODULE_MARKER
|
#if true // MODULE_MARKER
|
||||||
using System;
|
using System;
|
||||||
using DG.Tweening.Core;
|
using DG.Tweening.Core;
|
||||||
using DG.Tweening.Plugins;
|
using DG.Tweening.Plugins;
|
||||||
using DG.Tweening.Plugins.Core.PathCore;
|
using DG.Tweening.Plugins.Core.PathCore;
|
||||||
using DG.Tweening.Plugins.Options;
|
using DG.Tweening.Plugins.Options;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
#pragma warning disable 1591
|
#pragma warning disable 1591
|
||||||
namespace DG.Tweening
|
namespace DG.Tweening
|
||||||
{
|
{
|
||||||
public static class DOTweenModulePhysics2D
|
public static class DOTweenModulePhysics2D
|
||||||
{
|
{
|
||||||
#region Shortcuts
|
#region Shortcuts
|
||||||
|
|
||||||
#region Rigidbody2D Shortcuts
|
#region Rigidbody2D Shortcuts
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody2D's position to the given value.
|
/// <summary>Tweens a Rigidbody2D's position to the given value.
|
||||||
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
||||||
public static TweenerCore<Vector2, Vector2, VectorOptions> DOMove(this Rigidbody2D target, Vector2 endValue, float duration, bool snapping = false)
|
public static TweenerCore<Vector2, Vector2, VectorOptions> DOMove(this Rigidbody2D target, Vector2 endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
TweenerCore<Vector2, Vector2, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, endValue, duration);
|
TweenerCore<Vector2, Vector2, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, endValue, duration);
|
||||||
t.SetOptions(snapping).SetTarget(target);
|
t.SetOptions(snapping).SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody2D's X position to the given value.
|
/// <summary>Tweens a Rigidbody2D's X position to the given value.
|
||||||
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
||||||
public static TweenerCore<Vector2, Vector2, VectorOptions> DOMoveX(this Rigidbody2D target, float endValue, float duration, bool snapping = false)
|
public static TweenerCore<Vector2, Vector2, VectorOptions> DOMoveX(this Rigidbody2D target, float endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
TweenerCore<Vector2, Vector2, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, new Vector2(endValue, 0), duration);
|
TweenerCore<Vector2, Vector2, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, new Vector2(endValue, 0), duration);
|
||||||
t.SetOptions(AxisConstraint.X, snapping).SetTarget(target);
|
t.SetOptions(AxisConstraint.X, snapping).SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody2D's Y position to the given value.
|
/// <summary>Tweens a Rigidbody2D's Y position to the given value.
|
||||||
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
||||||
public static TweenerCore<Vector2, Vector2, VectorOptions> DOMoveY(this Rigidbody2D target, float endValue, float duration, bool snapping = false)
|
public static TweenerCore<Vector2, Vector2, VectorOptions> DOMoveY(this Rigidbody2D target, float endValue, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
TweenerCore<Vector2, Vector2, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, new Vector2(0, endValue), duration);
|
TweenerCore<Vector2, Vector2, VectorOptions> t = DOTween.To(() => target.position, target.MovePosition, new Vector2(0, endValue), duration);
|
||||||
t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target);
|
t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody2D's rotation to the given value.
|
/// <summary>Tweens a Rigidbody2D's rotation to the given value.
|
||||||
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
public static TweenerCore<float, float, FloatOptions> DORotate(this Rigidbody2D target, float endValue, float duration)
|
public static TweenerCore<float, float, FloatOptions> DORotate(this Rigidbody2D target, float endValue, float duration)
|
||||||
{
|
{
|
||||||
TweenerCore<float, float, FloatOptions> t = DOTween.To(() => target.rotation, target.MoveRotation, endValue, duration);
|
TweenerCore<float, float, FloatOptions> t = DOTween.To(() => target.rotation, target.MoveRotation, endValue, duration);
|
||||||
t.SetTarget(target);
|
t.SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
#region Special
|
#region Special
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody2D's position to the given value, while also applying a jump effect along the Y axis.
|
/// <summary>Tweens a Rigidbody2D's position to the given value, while also applying a jump effect along the Y axis.
|
||||||
/// Returns a Sequence instead of a Tweener.
|
/// Returns a Sequence instead of a Tweener.
|
||||||
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations.
|
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations.
|
||||||
/// <para>IMPORTANT: a rigidbody2D can't be animated in a jump arc using MovePosition, so the tween will directly set the position</para></summary>
|
/// <para>IMPORTANT: a rigidbody2D can't be animated in a jump arc using MovePosition, so the tween will directly set the position</para></summary>
|
||||||
/// <param name="endValue">The end value to reach</param>
|
/// <param name="endValue">The end value to reach</param>
|
||||||
/// <param name="jumpPower">Power of the jump (the max height of the jump is represented by this plus the final Y offset)</param>
|
/// <param name="jumpPower">Power of the jump (the max height of the jump is represented by this plus the final Y offset)</param>
|
||||||
/// <param name="numJumps">Total number of jumps</param>
|
/// <param name="numJumps">Total number of jumps</param>
|
||||||
/// <param name="duration">The duration of the tween</param>
|
/// <param name="duration">The duration of the tween</param>
|
||||||
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
|
||||||
public static Sequence DOJump(this Rigidbody2D target, Vector2 endValue, float jumpPower, int numJumps, float duration, bool snapping = false)
|
public static Sequence DOJump(this Rigidbody2D target, Vector2 endValue, float jumpPower, int numJumps, float duration, bool snapping = false)
|
||||||
{
|
{
|
||||||
if (numJumps < 1) numJumps = 1;
|
if (numJumps < 1) numJumps = 1;
|
||||||
float startPosY = 0;
|
float startPosY = 0;
|
||||||
float offsetY = -1;
|
float offsetY = -1;
|
||||||
bool offsetYSet = false;
|
bool offsetYSet = false;
|
||||||
Sequence s = DOTween.Sequence();
|
Sequence s = DOTween.Sequence();
|
||||||
Tween yTween = DOTween.To(() => target.position, x => target.position = x, new Vector2(0, jumpPower), duration / (numJumps * 2))
|
Tween yTween = DOTween.To(() => target.position, x => target.position = x, new Vector2(0, jumpPower), duration / (numJumps * 2))
|
||||||
.SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative()
|
.SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative()
|
||||||
.SetLoops(numJumps * 2, LoopType.Yoyo)
|
.SetLoops(numJumps * 2, LoopType.Yoyo)
|
||||||
.OnStart(() => startPosY = target.position.y);
|
.OnStart(() => startPosY = target.position.y);
|
||||||
s.Append(DOTween.To(() => target.position, x => target.position = x, new Vector2(endValue.x, 0), duration)
|
s.Append(DOTween.To(() => target.position, x => target.position = x, new Vector2(endValue.x, 0), duration)
|
||||||
.SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear)
|
.SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear)
|
||||||
).Join(yTween)
|
).Join(yTween)
|
||||||
.SetTarget(target).SetEase(DOTween.defaultEaseType);
|
.SetTarget(target).SetEase(DOTween.defaultEaseType);
|
||||||
yTween.OnUpdate(() => {
|
yTween.OnUpdate(() => {
|
||||||
if (!offsetYSet) {
|
if (!offsetYSet) {
|
||||||
offsetYSet = true;
|
offsetYSet = true;
|
||||||
offsetY = s.isRelative ? endValue.y : endValue.y - startPosY;
|
offsetY = s.isRelative ? endValue.y : endValue.y - startPosY;
|
||||||
}
|
}
|
||||||
Vector3 pos = target.position;
|
Vector3 pos = target.position;
|
||||||
pos.y += DOVirtual.EasedValue(0, offsetY, yTween.ElapsedPercentage(), Ease.OutQuad);
|
pos.y += DOVirtual.EasedValue(0, offsetY, yTween.ElapsedPercentage(), Ease.OutQuad);
|
||||||
target.MovePosition(pos);
|
target.MovePosition(pos);
|
||||||
});
|
});
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Rigidbody2D's position through the given path waypoints, using the chosen path algorithm.
|
/// <summary>Tweens a Rigidbody2D's position through the given path waypoints, using the chosen path algorithm.
|
||||||
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations.
|
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations.
|
||||||
/// <para>NOTE: to tween a Rigidbody2D correctly it should be set to kinematic at least while being tweened.</para>
|
/// <para>NOTE: to tween a Rigidbody2D correctly it should be set to kinematic at least while being tweened.</para>
|
||||||
/// <para>BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug).
|
/// <para>BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug).
|
||||||
/// If you plan to publish there you should use a regular transform.DOPath.</para></summary>
|
/// If you plan to publish there you should use a regular transform.DOPath.</para></summary>
|
||||||
/// <param name="path">The waypoints to go through</param>
|
/// <param name="path">The waypoints to go through</param>
|
||||||
/// <param name="duration">The duration of the tween</param>
|
/// <param name="duration">The duration of the tween</param>
|
||||||
/// <param name="pathType">The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points)</param>
|
/// <param name="pathType">The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points)</param>
|
||||||
/// <param name="pathMode">The path mode: 3D, side-scroller 2D, top-down 2D</param>
|
/// <param name="pathMode">The path mode: 3D, side-scroller 2D, top-down 2D</param>
|
||||||
/// <param name="resolution">The resolution of the path (useless in case of Linear paths): higher resolutions make for more detailed curved paths but are more expensive.
|
/// <param name="resolution">The resolution of the path (useless in case of Linear paths): higher resolutions make for more detailed curved paths but are more expensive.
|
||||||
/// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints</param>
|
/// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints</param>
|
||||||
/// <param name="gizmoColor">The color of the path (shown when gizmos are active in the Play panel and the tween is running)</param>
|
/// <param name="gizmoColor">The color of the path (shown when gizmos are active in the Play panel and the tween is running)</param>
|
||||||
public static TweenerCore<Vector3, Path, PathOptions> DOPath(
|
public static TweenerCore<Vector3, Path, PathOptions> DOPath(
|
||||||
this Rigidbody2D target, Vector2[] path, float duration, PathType pathType = PathType.Linear,
|
this Rigidbody2D target, Vector2[] path, float duration, PathType pathType = PathType.Linear,
|
||||||
PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null
|
PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
if (resolution < 1) resolution = 1;
|
if (resolution < 1) resolution = 1;
|
||||||
int len = path.Length;
|
int len = path.Length;
|
||||||
Vector3[] path3D = new Vector3[len];
|
Vector3[] path3D = new Vector3[len];
|
||||||
for (int i = 0; i < len; ++i) path3D[i] = path[i];
|
for (int i = 0; i < len; ++i) path3D[i] = path[i];
|
||||||
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => target.position, x => target.MovePosition(x), new Path(pathType, path3D, resolution, gizmoColor), duration)
|
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => target.position, x => target.MovePosition(x), new Path(pathType, path3D, resolution, gizmoColor), duration)
|
||||||
.SetTarget(target).SetUpdate(UpdateType.Fixed);
|
.SetTarget(target).SetUpdate(UpdateType.Fixed);
|
||||||
|
|
||||||
t.plugOptions.isRigidbody2D = true;
|
t.plugOptions.isRigidbody2D = true;
|
||||||
t.plugOptions.mode = pathMode;
|
t.plugOptions.mode = pathMode;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
/// <summary>Tweens a Rigidbody2D's localPosition through the given path waypoints, using the chosen path algorithm.
|
/// <summary>Tweens a Rigidbody2D's localPosition through the given path waypoints, using the chosen path algorithm.
|
||||||
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations
|
/// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations
|
||||||
/// <para>NOTE: to tween a Rigidbody2D correctly it should be set to kinematic at least while being tweened.</para>
|
/// <para>NOTE: to tween a Rigidbody2D correctly it should be set to kinematic at least while being tweened.</para>
|
||||||
/// <para>BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug).
|
/// <para>BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug).
|
||||||
/// If you plan to publish there you should use a regular transform.DOLocalPath.</para></summary>
|
/// If you plan to publish there you should use a regular transform.DOLocalPath.</para></summary>
|
||||||
/// <param name="path">The waypoint to go through</param>
|
/// <param name="path">The waypoint to go through</param>
|
||||||
/// <param name="duration">The duration of the tween</param>
|
/// <param name="duration">The duration of the tween</param>
|
||||||
/// <param name="pathType">The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points)</param>
|
/// <param name="pathType">The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points)</param>
|
||||||
/// <param name="pathMode">The path mode: 3D, side-scroller 2D, top-down 2D</param>
|
/// <param name="pathMode">The path mode: 3D, side-scroller 2D, top-down 2D</param>
|
||||||
/// <param name="resolution">The resolution of the path: higher resolutions make for more detailed curved paths but are more expensive.
|
/// <param name="resolution">The resolution of the path: higher resolutions make for more detailed curved paths but are more expensive.
|
||||||
/// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints</param>
|
/// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints</param>
|
||||||
/// <param name="gizmoColor">The color of the path (shown when gizmos are active in the Play panel and the tween is running)</param>
|
/// <param name="gizmoColor">The color of the path (shown when gizmos are active in the Play panel and the tween is running)</param>
|
||||||
public static TweenerCore<Vector3, Path, PathOptions> DOLocalPath(
|
public static TweenerCore<Vector3, Path, PathOptions> DOLocalPath(
|
||||||
this Rigidbody2D target, Vector2[] path, float duration, PathType pathType = PathType.Linear,
|
this Rigidbody2D target, Vector2[] path, float duration, PathType pathType = PathType.Linear,
|
||||||
PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null
|
PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
if (resolution < 1) resolution = 1;
|
if (resolution < 1) resolution = 1;
|
||||||
int len = path.Length;
|
int len = path.Length;
|
||||||
Vector3[] path3D = new Vector3[len];
|
Vector3[] path3D = new Vector3[len];
|
||||||
for (int i = 0; i < len; ++i) path3D[i] = path[i];
|
for (int i = 0; i < len; ++i) path3D[i] = path[i];
|
||||||
Transform trans = target.transform;
|
Transform trans = target.transform;
|
||||||
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), new Path(pathType, path3D, resolution, gizmoColor), duration)
|
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), new Path(pathType, path3D, resolution, gizmoColor), duration)
|
||||||
.SetTarget(target).SetUpdate(UpdateType.Fixed);
|
.SetTarget(target).SetUpdate(UpdateType.Fixed);
|
||||||
|
|
||||||
t.plugOptions.isRigidbody2D = true;
|
t.plugOptions.isRigidbody2D = true;
|
||||||
t.plugOptions.mode = pathMode;
|
t.plugOptions.mode = pathMode;
|
||||||
t.plugOptions.useLocalPosition = true;
|
t.plugOptions.useLocalPosition = true;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
// Used by path editor when creating the actual tween, so it can pass a pre-compiled path
|
// Used by path editor when creating the actual tween, so it can pass a pre-compiled path
|
||||||
internal static TweenerCore<Vector3, Path, PathOptions> DOPath(
|
internal static TweenerCore<Vector3, Path, PathOptions> DOPath(
|
||||||
this Rigidbody2D target, Path path, float duration, PathMode pathMode = PathMode.Full3D
|
this Rigidbody2D target, Path path, float duration, PathMode pathMode = PathMode.Full3D
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => target.position, x => target.MovePosition(x), path, duration)
|
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => target.position, x => target.MovePosition(x), path, duration)
|
||||||
.SetTarget(target);
|
.SetTarget(target);
|
||||||
|
|
||||||
t.plugOptions.isRigidbody2D = true;
|
t.plugOptions.isRigidbody2D = true;
|
||||||
t.plugOptions.mode = pathMode;
|
t.plugOptions.mode = pathMode;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
internal static TweenerCore<Vector3, Path, PathOptions> DOLocalPath(
|
internal static TweenerCore<Vector3, Path, PathOptions> DOLocalPath(
|
||||||
this Rigidbody2D target, Path path, float duration, PathMode pathMode = PathMode.Full3D
|
this Rigidbody2D target, Path path, float duration, PathMode pathMode = PathMode.Full3D
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
Transform trans = target.transform;
|
Transform trans = target.transform;
|
||||||
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), path, duration)
|
TweenerCore<Vector3, Path, PathOptions> t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), path, duration)
|
||||||
.SetTarget(target);
|
.SetTarget(target);
|
||||||
|
|
||||||
t.plugOptions.isRigidbody2D = true;
|
t.plugOptions.isRigidbody2D = true;
|
||||||
t.plugOptions.mode = pathMode;
|
t.plugOptions.mode = pathMode;
|
||||||
t.plugOptions.useLocalPosition = true;
|
t.plugOptions.useLocalPosition = true;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -1,93 +1,93 @@
|
|||||||
// Author: Daniele Giardini - http://www.demigiant.com
|
// Author: Daniele Giardini - http://www.demigiant.com
|
||||||
// Created: 2018/07/13
|
// Created: 2018/07/13
|
||||||
|
|
||||||
#if true // MODULE_MARKER
|
#if true // MODULE_MARKER
|
||||||
using System;
|
using System;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using DG.Tweening.Core;
|
using DG.Tweening.Core;
|
||||||
using DG.Tweening.Plugins.Options;
|
using DG.Tweening.Plugins.Options;
|
||||||
|
|
||||||
#pragma warning disable 1591
|
#pragma warning disable 1591
|
||||||
namespace DG.Tweening
|
namespace DG.Tweening
|
||||||
{
|
{
|
||||||
public static class DOTweenModuleSprite
|
public static class DOTweenModuleSprite
|
||||||
{
|
{
|
||||||
#region Shortcuts
|
#region Shortcuts
|
||||||
|
|
||||||
#region SpriteRenderer
|
#region SpriteRenderer
|
||||||
|
|
||||||
/// <summary>Tweens a SpriteRenderer's color to the given value.
|
/// <summary>Tweens a SpriteRenderer's color to the given value.
|
||||||
/// Also stores the spriteRenderer as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the spriteRenderer as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
public static TweenerCore<Color, Color, ColorOptions> DOColor(this SpriteRenderer target, Color endValue, float duration)
|
public static TweenerCore<Color, Color, ColorOptions> DOColor(this SpriteRenderer target, Color endValue, float duration)
|
||||||
{
|
{
|
||||||
TweenerCore<Color, Color, ColorOptions> t = DOTween.To(() => target.color, x => target.color = x, endValue, duration);
|
TweenerCore<Color, Color, ColorOptions> t = DOTween.To(() => target.color, x => target.color = x, endValue, duration);
|
||||||
t.SetTarget(target);
|
t.SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Material's alpha color to the given value.
|
/// <summary>Tweens a Material's alpha color to the given value.
|
||||||
/// Also stores the spriteRenderer as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the spriteRenderer as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
|
||||||
public static TweenerCore<Color, Color, ColorOptions> DOFade(this SpriteRenderer target, float endValue, float duration)
|
public static TweenerCore<Color, Color, ColorOptions> DOFade(this SpriteRenderer target, float endValue, float duration)
|
||||||
{
|
{
|
||||||
TweenerCore<Color, Color, ColorOptions> t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration);
|
TweenerCore<Color, Color, ColorOptions> t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration);
|
||||||
t.SetTarget(target);
|
t.SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a SpriteRenderer's color using the given gradient
|
/// <summary>Tweens a SpriteRenderer's color using the given gradient
|
||||||
/// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener).
|
/// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener).
|
||||||
/// Also stores the image as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the image as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="gradient">The gradient to use</param><param name="duration">The duration of the tween</param>
|
/// <param name="gradient">The gradient to use</param><param name="duration">The duration of the tween</param>
|
||||||
public static Sequence DOGradientColor(this SpriteRenderer target, Gradient gradient, float duration)
|
public static Sequence DOGradientColor(this SpriteRenderer target, Gradient gradient, float duration)
|
||||||
{
|
{
|
||||||
Sequence s = DOTween.Sequence();
|
Sequence s = DOTween.Sequence();
|
||||||
GradientColorKey[] colors = gradient.colorKeys;
|
GradientColorKey[] colors = gradient.colorKeys;
|
||||||
int len = colors.Length;
|
int len = colors.Length;
|
||||||
for (int i = 0; i < len; ++i) {
|
for (int i = 0; i < len; ++i) {
|
||||||
GradientColorKey c = colors[i];
|
GradientColorKey c = colors[i];
|
||||||
if (i == 0 && c.time <= 0) {
|
if (i == 0 && c.time <= 0) {
|
||||||
target.color = c.color;
|
target.color = c.color;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
float colorDuration = i == len - 1
|
float colorDuration = i == len - 1
|
||||||
? duration - s.Duration(false) // Verifies that total duration is correct
|
? duration - s.Duration(false) // Verifies that total duration is correct
|
||||||
: duration * (i == 0 ? c.time : c.time - colors[i - 1].time);
|
: duration * (i == 0 ? c.time : c.time - colors[i - 1].time);
|
||||||
s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear));
|
s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear));
|
||||||
}
|
}
|
||||||
s.SetTarget(target);
|
s.SetTarget(target);
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Blendables
|
#region Blendables
|
||||||
|
|
||||||
#region SpriteRenderer
|
#region SpriteRenderer
|
||||||
|
|
||||||
/// <summary>Tweens a SpriteRenderer's color to the given value,
|
/// <summary>Tweens a SpriteRenderer's color to the given value,
|
||||||
/// in a way that allows other DOBlendableColor tweens to work together on the same target,
|
/// in a way that allows other DOBlendableColor tweens to work together on the same target,
|
||||||
/// instead than fight each other as multiple DOColor would do.
|
/// instead than fight each other as multiple DOColor would do.
|
||||||
/// Also stores the SpriteRenderer as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the SpriteRenderer as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The value to tween to</param><param name="duration">The duration of the tween</param>
|
/// <param name="endValue">The value to tween to</param><param name="duration">The duration of the tween</param>
|
||||||
public static Tweener DOBlendableColor(this SpriteRenderer target, Color endValue, float duration)
|
public static Tweener DOBlendableColor(this SpriteRenderer target, Color endValue, float duration)
|
||||||
{
|
{
|
||||||
endValue = endValue - target.color;
|
endValue = endValue - target.color;
|
||||||
Color to = new Color(0, 0, 0, 0);
|
Color to = new Color(0, 0, 0, 0);
|
||||||
return DOTween.To(() => to, x => {
|
return DOTween.To(() => to, x => {
|
||||||
Color diff = x - to;
|
Color diff = x - to;
|
||||||
to = x;
|
to = x;
|
||||||
target.color += diff;
|
target.color += diff;
|
||||||
}, endValue, duration)
|
}, endValue, duration)
|
||||||
.Blendable().SetTarget(target);
|
.Blendable().SetTarget(target);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,389 +1,389 @@
|
|||||||
// Author: Daniele Giardini - http://www.demigiant.com
|
// Author: Daniele Giardini - http://www.demigiant.com
|
||||||
// Created: 2018/07/13
|
// Created: 2018/07/13
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using DG.Tweening.Core;
|
using DG.Tweening.Core;
|
||||||
using DG.Tweening.Plugins.Options;
|
using DG.Tweening.Plugins.Options;
|
||||||
//#if UNITY_2018_1_OR_NEWER && (NET_4_6 || NET_STANDARD_2_0)
|
//#if UNITY_2018_1_OR_NEWER && (NET_4_6 || NET_STANDARD_2_0)
|
||||||
//using Task = System.Threading.Tasks.Task;
|
//using Task = System.Threading.Tasks.Task;
|
||||||
//#endif
|
//#endif
|
||||||
|
|
||||||
#pragma warning disable 1591
|
#pragma warning disable 1591
|
||||||
namespace DG.Tweening
|
namespace DG.Tweening
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Shortcuts/functions that are not strictly related to specific Modules
|
/// Shortcuts/functions that are not strictly related to specific Modules
|
||||||
/// but are available only on some Unity versions
|
/// but are available only on some Unity versions
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class DOTweenModuleUnityVersion
|
public static class DOTweenModuleUnityVersion
|
||||||
{
|
{
|
||||||
#region Material
|
#region Material
|
||||||
|
|
||||||
/// <summary>Tweens a Material's color using the given gradient
|
/// <summary>Tweens a Material's color using the given gradient
|
||||||
/// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener).
|
/// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener).
|
||||||
/// Also stores the image as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the image as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="gradient">The gradient to use</param><param name="duration">The duration of the tween</param>
|
/// <param name="gradient">The gradient to use</param><param name="duration">The duration of the tween</param>
|
||||||
public static Sequence DOGradientColor(this Material target, Gradient gradient, float duration)
|
public static Sequence DOGradientColor(this Material target, Gradient gradient, float duration)
|
||||||
{
|
{
|
||||||
Sequence s = DOTween.Sequence();
|
Sequence s = DOTween.Sequence();
|
||||||
GradientColorKey[] colors = gradient.colorKeys;
|
GradientColorKey[] colors = gradient.colorKeys;
|
||||||
int len = colors.Length;
|
int len = colors.Length;
|
||||||
for (int i = 0; i < len; ++i) {
|
for (int i = 0; i < len; ++i) {
|
||||||
GradientColorKey c = colors[i];
|
GradientColorKey c = colors[i];
|
||||||
if (i == 0 && c.time <= 0) {
|
if (i == 0 && c.time <= 0) {
|
||||||
target.color = c.color;
|
target.color = c.color;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
float colorDuration = i == len - 1
|
float colorDuration = i == len - 1
|
||||||
? duration - s.Duration(false) // Verifies that total duration is correct
|
? duration - s.Duration(false) // Verifies that total duration is correct
|
||||||
: duration * (i == 0 ? c.time : c.time - colors[i - 1].time);
|
: duration * (i == 0 ? c.time : c.time - colors[i - 1].time);
|
||||||
s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear));
|
s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear));
|
||||||
}
|
}
|
||||||
s.SetTarget(target);
|
s.SetTarget(target);
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
/// <summary>Tweens a Material's named color property using the given gradient
|
/// <summary>Tweens a Material's named color property using the given gradient
|
||||||
/// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener).
|
/// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener).
|
||||||
/// Also stores the image as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the image as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="gradient">The gradient to use</param>
|
/// <param name="gradient">The gradient to use</param>
|
||||||
/// <param name="property">The name of the material property to tween (like _Tint or _SpecColor)</param>
|
/// <param name="property">The name of the material property to tween (like _Tint or _SpecColor)</param>
|
||||||
/// <param name="duration">The duration of the tween</param>
|
/// <param name="duration">The duration of the tween</param>
|
||||||
public static Sequence DOGradientColor(this Material target, Gradient gradient, string property, float duration)
|
public static Sequence DOGradientColor(this Material target, Gradient gradient, string property, float duration)
|
||||||
{
|
{
|
||||||
Sequence s = DOTween.Sequence();
|
Sequence s = DOTween.Sequence();
|
||||||
GradientColorKey[] colors = gradient.colorKeys;
|
GradientColorKey[] colors = gradient.colorKeys;
|
||||||
int len = colors.Length;
|
int len = colors.Length;
|
||||||
for (int i = 0; i < len; ++i) {
|
for (int i = 0; i < len; ++i) {
|
||||||
GradientColorKey c = colors[i];
|
GradientColorKey c = colors[i];
|
||||||
if (i == 0 && c.time <= 0) {
|
if (i == 0 && c.time <= 0) {
|
||||||
target.SetColor(property, c.color);
|
target.SetColor(property, c.color);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
float colorDuration = i == len - 1
|
float colorDuration = i == len - 1
|
||||||
? duration - s.Duration(false) // Verifies that total duration is correct
|
? duration - s.Duration(false) // Verifies that total duration is correct
|
||||||
: duration * (i == 0 ? c.time : c.time - colors[i - 1].time);
|
: duration * (i == 0 ? c.time : c.time - colors[i - 1].time);
|
||||||
s.Append(target.DOColor(c.color, property, colorDuration).SetEase(Ease.Linear));
|
s.Append(target.DOColor(c.color, property, colorDuration).SetEase(Ease.Linear));
|
||||||
}
|
}
|
||||||
s.SetTarget(target);
|
s.SetTarget(target);
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region CustomYieldInstructions
|
#region CustomYieldInstructions
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed or complete.
|
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed or complete.
|
||||||
/// It can be used inside a coroutine as a yield.
|
/// It can be used inside a coroutine as a yield.
|
||||||
/// <para>Example usage:</para><code>yield return myTween.WaitForCompletion(true);</code>
|
/// <para>Example usage:</para><code>yield return myTween.WaitForCompletion(true);</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static CustomYieldInstruction WaitForCompletion(this Tween t, bool returnCustomYieldInstruction)
|
public static CustomYieldInstruction WaitForCompletion(this Tween t, bool returnCustomYieldInstruction)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return new DOTweenCYInstruction.WaitForCompletion(t);
|
return new DOTweenCYInstruction.WaitForCompletion(t);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed or rewinded.
|
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed or rewinded.
|
||||||
/// It can be used inside a coroutine as a yield.
|
/// It can be used inside a coroutine as a yield.
|
||||||
/// <para>Example usage:</para><code>yield return myTween.WaitForRewind();</code>
|
/// <para>Example usage:</para><code>yield return myTween.WaitForRewind();</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static CustomYieldInstruction WaitForRewind(this Tween t, bool returnCustomYieldInstruction)
|
public static CustomYieldInstruction WaitForRewind(this Tween t, bool returnCustomYieldInstruction)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return new DOTweenCYInstruction.WaitForRewind(t);
|
return new DOTweenCYInstruction.WaitForRewind(t);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed.
|
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed.
|
||||||
/// It can be used inside a coroutine as a yield.
|
/// It can be used inside a coroutine as a yield.
|
||||||
/// <para>Example usage:</para><code>yield return myTween.WaitForKill();</code>
|
/// <para>Example usage:</para><code>yield return myTween.WaitForKill();</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static CustomYieldInstruction WaitForKill(this Tween t, bool returnCustomYieldInstruction)
|
public static CustomYieldInstruction WaitForKill(this Tween t, bool returnCustomYieldInstruction)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return new DOTweenCYInstruction.WaitForKill(t);
|
return new DOTweenCYInstruction.WaitForKill(t);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed or has gone through the given amount of loops.
|
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed or has gone through the given amount of loops.
|
||||||
/// It can be used inside a coroutine as a yield.
|
/// It can be used inside a coroutine as a yield.
|
||||||
/// <para>Example usage:</para><code>yield return myTween.WaitForElapsedLoops(2);</code>
|
/// <para>Example usage:</para><code>yield return myTween.WaitForElapsedLoops(2);</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="elapsedLoops">Elapsed loops to wait for</param>
|
/// <param name="elapsedLoops">Elapsed loops to wait for</param>
|
||||||
public static CustomYieldInstruction WaitForElapsedLoops(this Tween t, int elapsedLoops, bool returnCustomYieldInstruction)
|
public static CustomYieldInstruction WaitForElapsedLoops(this Tween t, int elapsedLoops, bool returnCustomYieldInstruction)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return new DOTweenCYInstruction.WaitForElapsedLoops(t, elapsedLoops);
|
return new DOTweenCYInstruction.WaitForElapsedLoops(t, elapsedLoops);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed
|
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed
|
||||||
/// or has reached the given time position (loops included, delays excluded).
|
/// or has reached the given time position (loops included, delays excluded).
|
||||||
/// It can be used inside a coroutine as a yield.
|
/// It can be used inside a coroutine as a yield.
|
||||||
/// <para>Example usage:</para><code>yield return myTween.WaitForPosition(2.5f);</code>
|
/// <para>Example usage:</para><code>yield return myTween.WaitForPosition(2.5f);</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="position">Position (loops included, delays excluded) to wait for</param>
|
/// <param name="position">Position (loops included, delays excluded) to wait for</param>
|
||||||
public static CustomYieldInstruction WaitForPosition(this Tween t, float position, bool returnCustomYieldInstruction)
|
public static CustomYieldInstruction WaitForPosition(this Tween t, float position, bool returnCustomYieldInstruction)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return new DOTweenCYInstruction.WaitForPosition(t, position);
|
return new DOTweenCYInstruction.WaitForPosition(t, position);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed or started
|
/// Returns a <see cref="CustomYieldInstruction"/> that waits until the tween is killed or started
|
||||||
/// (meaning when the tween is set in a playing state the first time, after any eventual delay).
|
/// (meaning when the tween is set in a playing state the first time, after any eventual delay).
|
||||||
/// It can be used inside a coroutine as a yield.
|
/// It can be used inside a coroutine as a yield.
|
||||||
/// <para>Example usage:</para><code>yield return myTween.WaitForStart();</code>
|
/// <para>Example usage:</para><code>yield return myTween.WaitForStart();</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static CustomYieldInstruction WaitForStart(this Tween t, bool returnCustomYieldInstruction)
|
public static CustomYieldInstruction WaitForStart(this Tween t, bool returnCustomYieldInstruction)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return new DOTweenCYInstruction.WaitForStart(t);
|
return new DOTweenCYInstruction.WaitForStart(t);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#if UNITY_2018_1_OR_NEWER
|
#if UNITY_2018_1_OR_NEWER
|
||||||
#region Unity 2018.1 or Newer
|
#region Unity 2018.1 or Newer
|
||||||
|
|
||||||
#region Material
|
#region Material
|
||||||
|
|
||||||
/// <summary>Tweens a Material's named texture offset property with the given ID to the given value.
|
/// <summary>Tweens a Material's named texture offset property with the given ID to the given value.
|
||||||
/// Also stores the material as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the material as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param>
|
/// <param name="endValue">The end value to reach</param>
|
||||||
/// <param name="propertyID">The ID of the material property to tween (also called nameID in Unity's manual)</param>
|
/// <param name="propertyID">The ID of the material property to tween (also called nameID in Unity's manual)</param>
|
||||||
/// <param name="duration">The duration of the tween</param>
|
/// <param name="duration">The duration of the tween</param>
|
||||||
public static TweenerCore<Vector2, Vector2, VectorOptions> DOOffset(this Material target, Vector2 endValue, int propertyID, float duration)
|
public static TweenerCore<Vector2, Vector2, VectorOptions> DOOffset(this Material target, Vector2 endValue, int propertyID, float duration)
|
||||||
{
|
{
|
||||||
if (!target.HasProperty(propertyID)) {
|
if (!target.HasProperty(propertyID)) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogMissingMaterialProperty(propertyID);
|
if (Debugger.logPriority > 0) Debugger.LogMissingMaterialProperty(propertyID);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
TweenerCore<Vector2, Vector2, VectorOptions> t = DOTween.To(() => target.GetTextureOffset(propertyID), x => target.SetTextureOffset(propertyID, x), endValue, duration);
|
TweenerCore<Vector2, Vector2, VectorOptions> t = DOTween.To(() => target.GetTextureOffset(propertyID), x => target.SetTextureOffset(propertyID, x), endValue, duration);
|
||||||
t.SetTarget(target);
|
t.SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Tweens a Material's named texture scale property with the given ID to the given value.
|
/// <summary>Tweens a Material's named texture scale property with the given ID to the given value.
|
||||||
/// Also stores the material as the tween's target so it can be used for filtered operations</summary>
|
/// Also stores the material as the tween's target so it can be used for filtered operations</summary>
|
||||||
/// <param name="endValue">The end value to reach</param>
|
/// <param name="endValue">The end value to reach</param>
|
||||||
/// <param name="propertyID">The ID of the material property to tween (also called nameID in Unity's manual)</param>
|
/// <param name="propertyID">The ID of the material property to tween (also called nameID in Unity's manual)</param>
|
||||||
/// <param name="duration">The duration of the tween</param>
|
/// <param name="duration">The duration of the tween</param>
|
||||||
public static TweenerCore<Vector2, Vector2, VectorOptions> DOTiling(this Material target, Vector2 endValue, int propertyID, float duration)
|
public static TweenerCore<Vector2, Vector2, VectorOptions> DOTiling(this Material target, Vector2 endValue, int propertyID, float duration)
|
||||||
{
|
{
|
||||||
if (!target.HasProperty(propertyID)) {
|
if (!target.HasProperty(propertyID)) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogMissingMaterialProperty(propertyID);
|
if (Debugger.logPriority > 0) Debugger.LogMissingMaterialProperty(propertyID);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
TweenerCore<Vector2, Vector2, VectorOptions> t = DOTween.To(() => target.GetTextureScale(propertyID), x => target.SetTextureScale(propertyID, x), endValue, duration);
|
TweenerCore<Vector2, Vector2, VectorOptions> t = DOTween.To(() => target.GetTextureScale(propertyID), x => target.SetTextureScale(propertyID, x), endValue, duration);
|
||||||
t.SetTarget(target);
|
t.SetTarget(target);
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region .NET 4.6 or Newer
|
#region .NET 4.6 or Newer
|
||||||
|
|
||||||
#if UNITY_2018_1_OR_NEWER && (NET_4_6 || NET_STANDARD_2_0)
|
#if UNITY_2018_1_OR_NEWER && (NET_4_6 || NET_STANDARD_2_0)
|
||||||
|
|
||||||
#region Async Instructions
|
#region Async Instructions
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed or complete.
|
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed or complete.
|
||||||
/// It can be used inside an async operation.
|
/// It can be used inside an async operation.
|
||||||
/// <para>Example usage:</para><code>await myTween.WaitForCompletion();</code>
|
/// <para>Example usage:</para><code>await myTween.WaitForCompletion();</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static async System.Threading.Tasks.Task AsyncWaitForCompletion(this Tween t)
|
public static async System.Threading.Tasks.Task AsyncWaitForCompletion(this Tween t)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
while (t.active && !t.IsComplete()) await System.Threading.Tasks.Task.Yield();
|
while (t.active && !t.IsComplete()) await System.Threading.Tasks.Task.Yield();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed or rewinded.
|
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed or rewinded.
|
||||||
/// It can be used inside an async operation.
|
/// It can be used inside an async operation.
|
||||||
/// <para>Example usage:</para><code>await myTween.AsyncWaitForRewind();</code>
|
/// <para>Example usage:</para><code>await myTween.AsyncWaitForRewind();</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static async System.Threading.Tasks.Task AsyncWaitForRewind(this Tween t)
|
public static async System.Threading.Tasks.Task AsyncWaitForRewind(this Tween t)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
while (t.active && (!t.playedOnce || t.position * (t.CompletedLoops() + 1) > 0)) await System.Threading.Tasks.Task.Yield();
|
while (t.active && (!t.playedOnce || t.position * (t.CompletedLoops() + 1) > 0)) await System.Threading.Tasks.Task.Yield();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed.
|
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed.
|
||||||
/// It can be used inside an async operation.
|
/// It can be used inside an async operation.
|
||||||
/// <para>Example usage:</para><code>await myTween.AsyncWaitForKill();</code>
|
/// <para>Example usage:</para><code>await myTween.AsyncWaitForKill();</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static async System.Threading.Tasks.Task AsyncWaitForKill(this Tween t)
|
public static async System.Threading.Tasks.Task AsyncWaitForKill(this Tween t)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
while (t.active) await System.Threading.Tasks.Task.Yield();
|
while (t.active) await System.Threading.Tasks.Task.Yield();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed or has gone through the given amount of loops.
|
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed or has gone through the given amount of loops.
|
||||||
/// It can be used inside an async operation.
|
/// It can be used inside an async operation.
|
||||||
/// <para>Example usage:</para><code>await myTween.AsyncWaitForElapsedLoops();</code>
|
/// <para>Example usage:</para><code>await myTween.AsyncWaitForElapsedLoops();</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="elapsedLoops">Elapsed loops to wait for</param>
|
/// <param name="elapsedLoops">Elapsed loops to wait for</param>
|
||||||
public static async System.Threading.Tasks.Task AsyncWaitForElapsedLoops(this Tween t, int elapsedLoops)
|
public static async System.Threading.Tasks.Task AsyncWaitForElapsedLoops(this Tween t, int elapsedLoops)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
while (t.active && t.CompletedLoops() < elapsedLoops) await System.Threading.Tasks.Task.Yield();
|
while (t.active && t.CompletedLoops() < elapsedLoops) await System.Threading.Tasks.Task.Yield();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed or started
|
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed or started
|
||||||
/// (meaning when the tween is set in a playing state the first time, after any eventual delay).
|
/// (meaning when the tween is set in a playing state the first time, after any eventual delay).
|
||||||
/// It can be used inside an async operation.
|
/// It can be used inside an async operation.
|
||||||
/// <para>Example usage:</para><code>await myTween.AsyncWaitForPosition();</code>
|
/// <para>Example usage:</para><code>await myTween.AsyncWaitForPosition();</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="position">Position (loops included, delays excluded) to wait for</param>
|
/// <param name="position">Position (loops included, delays excluded) to wait for</param>
|
||||||
public static async System.Threading.Tasks.Task AsyncWaitForPosition(this Tween t, float position)
|
public static async System.Threading.Tasks.Task AsyncWaitForPosition(this Tween t, float position)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
while (t.active && t.position * (t.CompletedLoops() + 1) < position) await System.Threading.Tasks.Task.Yield();
|
while (t.active && t.position * (t.CompletedLoops() + 1) < position) await System.Threading.Tasks.Task.Yield();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed.
|
/// Returns an async <see cref="System.Threading.Tasks.Task"/> that waits until the tween is killed.
|
||||||
/// It can be used inside an async operation.
|
/// It can be used inside an async operation.
|
||||||
/// <para>Example usage:</para><code>await myTween.AsyncWaitForKill();</code>
|
/// <para>Example usage:</para><code>await myTween.AsyncWaitForKill();</code>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static async System.Threading.Tasks.Task AsyncWaitForStart(this Tween t)
|
public static async System.Threading.Tasks.Task AsyncWaitForStart(this Tween t)
|
||||||
{
|
{
|
||||||
if (!t.active) {
|
if (!t.active) {
|
||||||
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
while (t.active && !t.playedOnce) await System.Threading.Tasks.Task.Yield();
|
while (t.active && !t.playedOnce) await System.Threading.Tasks.Task.Yield();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
// █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
|
// █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
|
||||||
// ███ CLASSES █████████████████████████████████████████████████████████████████████████████████████████████████████████
|
// ███ CLASSES █████████████████████████████████████████████████████████████████████████████████████████████████████████
|
||||||
// █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
|
// █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
|
||||||
|
|
||||||
public static class DOTweenCYInstruction
|
public static class DOTweenCYInstruction
|
||||||
{
|
{
|
||||||
public class WaitForCompletion : CustomYieldInstruction
|
public class WaitForCompletion : CustomYieldInstruction
|
||||||
{
|
{
|
||||||
public override bool keepWaiting { get {
|
public override bool keepWaiting { get {
|
||||||
return t.active && !t.IsComplete();
|
return t.active && !t.IsComplete();
|
||||||
}}
|
}}
|
||||||
readonly Tween t;
|
readonly Tween t;
|
||||||
public WaitForCompletion(Tween tween)
|
public WaitForCompletion(Tween tween)
|
||||||
{
|
{
|
||||||
t = tween;
|
t = tween;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class WaitForRewind : CustomYieldInstruction
|
public class WaitForRewind : CustomYieldInstruction
|
||||||
{
|
{
|
||||||
public override bool keepWaiting { get {
|
public override bool keepWaiting { get {
|
||||||
return t.active && (!t.playedOnce || t.position * (t.CompletedLoops() + 1) > 0);
|
return t.active && (!t.playedOnce || t.position * (t.CompletedLoops() + 1) > 0);
|
||||||
}}
|
}}
|
||||||
readonly Tween t;
|
readonly Tween t;
|
||||||
public WaitForRewind(Tween tween)
|
public WaitForRewind(Tween tween)
|
||||||
{
|
{
|
||||||
t = tween;
|
t = tween;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class WaitForKill : CustomYieldInstruction
|
public class WaitForKill : CustomYieldInstruction
|
||||||
{
|
{
|
||||||
public override bool keepWaiting { get {
|
public override bool keepWaiting { get {
|
||||||
return t.active;
|
return t.active;
|
||||||
}}
|
}}
|
||||||
readonly Tween t;
|
readonly Tween t;
|
||||||
public WaitForKill(Tween tween)
|
public WaitForKill(Tween tween)
|
||||||
{
|
{
|
||||||
t = tween;
|
t = tween;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class WaitForElapsedLoops : CustomYieldInstruction
|
public class WaitForElapsedLoops : CustomYieldInstruction
|
||||||
{
|
{
|
||||||
public override bool keepWaiting { get {
|
public override bool keepWaiting { get {
|
||||||
return t.active && t.CompletedLoops() < elapsedLoops;
|
return t.active && t.CompletedLoops() < elapsedLoops;
|
||||||
}}
|
}}
|
||||||
readonly Tween t;
|
readonly Tween t;
|
||||||
readonly int elapsedLoops;
|
readonly int elapsedLoops;
|
||||||
public WaitForElapsedLoops(Tween tween, int elapsedLoops)
|
public WaitForElapsedLoops(Tween tween, int elapsedLoops)
|
||||||
{
|
{
|
||||||
t = tween;
|
t = tween;
|
||||||
this.elapsedLoops = elapsedLoops;
|
this.elapsedLoops = elapsedLoops;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class WaitForPosition : CustomYieldInstruction
|
public class WaitForPosition : CustomYieldInstruction
|
||||||
{
|
{
|
||||||
public override bool keepWaiting { get {
|
public override bool keepWaiting { get {
|
||||||
return t.active && t.position * (t.CompletedLoops() + 1) < position;
|
return t.active && t.position * (t.CompletedLoops() + 1) < position;
|
||||||
}}
|
}}
|
||||||
readonly Tween t;
|
readonly Tween t;
|
||||||
readonly float position;
|
readonly float position;
|
||||||
public WaitForPosition(Tween tween, float position)
|
public WaitForPosition(Tween tween, float position)
|
||||||
{
|
{
|
||||||
t = tween;
|
t = tween;
|
||||||
this.position = position;
|
this.position = position;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class WaitForStart : CustomYieldInstruction
|
public class WaitForStart : CustomYieldInstruction
|
||||||
{
|
{
|
||||||
public override bool keepWaiting { get {
|
public override bool keepWaiting { get {
|
||||||
return t.active && !t.playedOnce;
|
return t.active && !t.playedOnce;
|
||||||
}}
|
}}
|
||||||
readonly Tween t;
|
readonly Tween t;
|
||||||
public WaitForStart(Tween tween)
|
public WaitForStart(Tween tween)
|
||||||
{
|
{
|
||||||
t = tween;
|
t = tween;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,167 +1,167 @@
|
|||||||
// Author: Daniele Giardini - http://www.demigiant.com
|
// Author: Daniele Giardini - http://www.demigiant.com
|
||||||
// Created: 2018/07/13
|
// Created: 2018/07/13
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using DG.Tweening.Core;
|
using DG.Tweening.Core;
|
||||||
using DG.Tweening.Plugins.Core.PathCore;
|
using DG.Tweening.Plugins.Core.PathCore;
|
||||||
using DG.Tweening.Plugins.Options;
|
using DG.Tweening.Plugins.Options;
|
||||||
|
|
||||||
#pragma warning disable 1591
|
#pragma warning disable 1591
|
||||||
namespace DG.Tweening
|
namespace DG.Tweening
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Utility functions that deal with available Modules.
|
/// Utility functions that deal with available Modules.
|
||||||
/// Modules defines:
|
/// Modules defines:
|
||||||
/// - DOTAUDIO
|
/// - DOTAUDIO
|
||||||
/// - DOTPHYSICS
|
/// - DOTPHYSICS
|
||||||
/// - DOTPHYSICS2D
|
/// - DOTPHYSICS2D
|
||||||
/// - DOTSPRITE
|
/// - DOTSPRITE
|
||||||
/// - DOTUI
|
/// - DOTUI
|
||||||
/// Extra defines set and used for implementation of external assets:
|
/// Extra defines set and used for implementation of external assets:
|
||||||
/// - DOTWEEN_TMP ► TextMesh Pro
|
/// - DOTWEEN_TMP ► TextMesh Pro
|
||||||
/// - DOTWEEN_TK2D ► 2D Toolkit
|
/// - DOTWEEN_TK2D ► 2D Toolkit
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class DOTweenModuleUtils
|
public static class DOTweenModuleUtils
|
||||||
{
|
{
|
||||||
static bool _initialized;
|
static bool _initialized;
|
||||||
|
|
||||||
#region Reflection
|
#region Reflection
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Called via Reflection by DOTweenComponent on Awake
|
/// Called via Reflection by DOTweenComponent on Awake
|
||||||
/// </summary>
|
/// </summary>
|
||||||
#if UNITY_2018_1_OR_NEWER
|
#if UNITY_2018_1_OR_NEWER
|
||||||
[UnityEngine.Scripting.Preserve]
|
[UnityEngine.Scripting.Preserve]
|
||||||
#endif
|
#endif
|
||||||
public static void Init()
|
public static void Init()
|
||||||
{
|
{
|
||||||
if (_initialized) return;
|
if (_initialized) return;
|
||||||
|
|
||||||
_initialized = true;
|
_initialized = true;
|
||||||
DOTweenExternalCommand.SetOrientationOnPath += Physics.SetOrientationOnPath;
|
DOTweenExternalCommand.SetOrientationOnPath += Physics.SetOrientationOnPath;
|
||||||
|
|
||||||
#if UNITY_EDITOR
|
#if UNITY_EDITOR
|
||||||
#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1
|
#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1
|
||||||
UnityEditor.EditorApplication.playmodeStateChanged += PlaymodeStateChanged;
|
UnityEditor.EditorApplication.playmodeStateChanged += PlaymodeStateChanged;
|
||||||
#else
|
#else
|
||||||
UnityEditor.EditorApplication.playModeStateChanged += PlaymodeStateChanged;
|
UnityEditor.EditorApplication.playModeStateChanged += PlaymodeStateChanged;
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#if UNITY_2018_1_OR_NEWER
|
#if UNITY_2018_1_OR_NEWER
|
||||||
#pragma warning disable
|
#pragma warning disable
|
||||||
[UnityEngine.Scripting.Preserve]
|
[UnityEngine.Scripting.Preserve]
|
||||||
// Just used to preserve methods when building, never called
|
// Just used to preserve methods when building, never called
|
||||||
static void Preserver()
|
static void Preserver()
|
||||||
{
|
{
|
||||||
Assembly[] loadedAssemblies = AppDomain.CurrentDomain.GetAssemblies();
|
Assembly[] loadedAssemblies = AppDomain.CurrentDomain.GetAssemblies();
|
||||||
MethodInfo mi = typeof(MonoBehaviour).GetMethod("Stub");
|
MethodInfo mi = typeof(MonoBehaviour).GetMethod("Stub");
|
||||||
}
|
}
|
||||||
#pragma warning restore
|
#pragma warning restore
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#if UNITY_EDITOR
|
#if UNITY_EDITOR
|
||||||
// Fires OnApplicationPause in DOTweenComponent even when Editor is paused (otherwise it's only fired at runtime)
|
// Fires OnApplicationPause in DOTweenComponent even when Editor is paused (otherwise it's only fired at runtime)
|
||||||
#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1
|
#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1
|
||||||
static void PlaymodeStateChanged()
|
static void PlaymodeStateChanged()
|
||||||
#else
|
#else
|
||||||
static void PlaymodeStateChanged(UnityEditor.PlayModeStateChange state)
|
static void PlaymodeStateChanged(UnityEditor.PlayModeStateChange state)
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
if (DOTween.instance == null) return;
|
if (DOTween.instance == null) return;
|
||||||
DOTween.instance.OnApplicationPause(UnityEditor.EditorApplication.isPaused);
|
DOTween.instance.OnApplicationPause(UnityEditor.EditorApplication.isPaused);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
|
// █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
|
||||||
// ███ INTERNAL CLASSES ████████████████████████████████████████████████████████████████████████████████████████████████
|
// ███ INTERNAL CLASSES ████████████████████████████████████████████████████████████████████████████████████████████████
|
||||||
// █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
|
// █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
|
||||||
|
|
||||||
public static class Physics
|
public static class Physics
|
||||||
{
|
{
|
||||||
// Called via DOTweenExternalCommand callback
|
// Called via DOTweenExternalCommand callback
|
||||||
public static void SetOrientationOnPath(PathOptions options, Tween t, Quaternion newRot, Transform trans)
|
public static void SetOrientationOnPath(PathOptions options, Tween t, Quaternion newRot, Transform trans)
|
||||||
{
|
{
|
||||||
#if true // PHYSICS_MARKER
|
#if true // PHYSICS_MARKER
|
||||||
if (options.isRigidbody) ((Rigidbody)t.target).rotation = newRot;
|
if (options.isRigidbody) ((Rigidbody)t.target).rotation = newRot;
|
||||||
else trans.rotation = newRot;
|
else trans.rotation = newRot;
|
||||||
#else
|
#else
|
||||||
trans.rotation = newRot;
|
trans.rotation = newRot;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
// Returns FALSE if the DOTween's Physics2D Module is disabled, or if there's no Rigidbody2D attached
|
// Returns FALSE if the DOTween's Physics2D Module is disabled, or if there's no Rigidbody2D attached
|
||||||
public static bool HasRigidbody2D(Component target)
|
public static bool HasRigidbody2D(Component target)
|
||||||
{
|
{
|
||||||
#if true // PHYSICS2D_MARKER
|
#if true // PHYSICS2D_MARKER
|
||||||
return target.GetComponent<Rigidbody2D>() != null;
|
return target.GetComponent<Rigidbody2D>() != null;
|
||||||
#else
|
#else
|
||||||
return false;
|
return false;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#region Called via Reflection
|
#region Called via Reflection
|
||||||
|
|
||||||
|
|
||||||
// Called via Reflection by DOTweenPathInspector
|
// Called via Reflection by DOTweenPathInspector
|
||||||
// Returns FALSE if the DOTween's Physics Module is disabled, or if there's no rigidbody attached
|
// Returns FALSE if the DOTween's Physics Module is disabled, or if there's no rigidbody attached
|
||||||
#if UNITY_2018_1_OR_NEWER
|
#if UNITY_2018_1_OR_NEWER
|
||||||
[UnityEngine.Scripting.Preserve]
|
[UnityEngine.Scripting.Preserve]
|
||||||
#endif
|
#endif
|
||||||
public static bool HasRigidbody(Component target)
|
public static bool HasRigidbody(Component target)
|
||||||
{
|
{
|
||||||
#if true // PHYSICS_MARKER
|
#if true // PHYSICS_MARKER
|
||||||
return target.GetComponent<Rigidbody>() != null;
|
return target.GetComponent<Rigidbody>() != null;
|
||||||
#else
|
#else
|
||||||
return false;
|
return false;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
// Called via Reflection by DOTweenPath
|
// Called via Reflection by DOTweenPath
|
||||||
#if UNITY_2018_1_OR_NEWER
|
#if UNITY_2018_1_OR_NEWER
|
||||||
[UnityEngine.Scripting.Preserve]
|
[UnityEngine.Scripting.Preserve]
|
||||||
#endif
|
#endif
|
||||||
public static TweenerCore<Vector3, Path, PathOptions> CreateDOTweenPathTween(
|
public static TweenerCore<Vector3, Path, PathOptions> CreateDOTweenPathTween(
|
||||||
MonoBehaviour target, bool tweenRigidbody, bool isLocal, Path path, float duration, PathMode pathMode
|
MonoBehaviour target, bool tweenRigidbody, bool isLocal, Path path, float duration, PathMode pathMode
|
||||||
){
|
){
|
||||||
TweenerCore<Vector3, Path, PathOptions> t = null;
|
TweenerCore<Vector3, Path, PathOptions> t = null;
|
||||||
bool rBodyFoundAndTweened = false;
|
bool rBodyFoundAndTweened = false;
|
||||||
#if true // PHYSICS_MARKER
|
#if true // PHYSICS_MARKER
|
||||||
if (tweenRigidbody) {
|
if (tweenRigidbody) {
|
||||||
Rigidbody rBody = target.GetComponent<Rigidbody>();
|
Rigidbody rBody = target.GetComponent<Rigidbody>();
|
||||||
if (rBody != null) {
|
if (rBody != null) {
|
||||||
rBodyFoundAndTweened = true;
|
rBodyFoundAndTweened = true;
|
||||||
t = isLocal
|
t = isLocal
|
||||||
? rBody.DOLocalPath(path, duration, pathMode)
|
? rBody.DOLocalPath(path, duration, pathMode)
|
||||||
: rBody.DOPath(path, duration, pathMode);
|
: rBody.DOPath(path, duration, pathMode);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if true // PHYSICS2D_MARKER
|
#if true // PHYSICS2D_MARKER
|
||||||
if (!rBodyFoundAndTweened && tweenRigidbody) {
|
if (!rBodyFoundAndTweened && tweenRigidbody) {
|
||||||
Rigidbody2D rBody2D = target.GetComponent<Rigidbody2D>();
|
Rigidbody2D rBody2D = target.GetComponent<Rigidbody2D>();
|
||||||
if (rBody2D != null) {
|
if (rBody2D != null) {
|
||||||
rBodyFoundAndTweened = true;
|
rBodyFoundAndTweened = true;
|
||||||
t = isLocal
|
t = isLocal
|
||||||
? rBody2D.DOLocalPath(path, duration, pathMode)
|
? rBody2D.DOLocalPath(path, duration, pathMode)
|
||||||
: rBody2D.DOPath(path, duration, pathMode);
|
: rBody2D.DOPath(path, duration, pathMode);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
if (!rBodyFoundAndTweened) {
|
if (!rBodyFoundAndTweened) {
|
||||||
t = isLocal
|
t = isLocal
|
||||||
? target.transform.DOLocalPath(path, duration, pathMode)
|
? target.transform.DOLocalPath(path, duration, pathMode)
|
||||||
: target.transform.DOPath(path, duration, pathMode);
|
: target.transform.DOPath(path, duration, pathMode);
|
||||||
}
|
}
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,29 +1,29 @@
|
|||||||
DOTween and DOTween Pro are copyright (c) 2014-2018 Daniele Giardini - Demigiant
|
DOTween and DOTween Pro are copyright (c) 2014-2018 Daniele Giardini - Demigiant
|
||||||
|
|
||||||
// IMPORTANT!!! /////////////////////////////////////////////
|
// IMPORTANT!!! /////////////////////////////////////////////
|
||||||
// Upgrading DOTween from versions older than 1.2.000 ///////
|
// Upgrading DOTween from versions older than 1.2.000 ///////
|
||||||
// (or DOTween Pro older than 1.0.000) //////////////////////
|
// (or DOTween Pro older than 1.0.000) //////////////////////
|
||||||
-------------------------------------------------------------
|
-------------------------------------------------------------
|
||||||
If you're upgrading your project from a version of DOTween older than 1.2.000 (or DOTween Pro older than 1.0.000) please follow these instructions carefully.
|
If you're upgrading your project from a version of DOTween older than 1.2.000 (or DOTween Pro older than 1.0.000) please follow these instructions carefully.
|
||||||
1) Import the new version in the same folder as the previous one, overwriting old files. A lot of errors will appear but don't worry
|
1) Import the new version in the same folder as the previous one, overwriting old files. A lot of errors will appear but don't worry
|
||||||
2) Close and reopen Unity (and your project). This is fundamental: skipping this step will cause a bloodbath
|
2) Close and reopen Unity (and your project). This is fundamental: skipping this step will cause a bloodbath
|
||||||
3) Open DOTween's Utility Panel (Tools > Demigiant > DOTween Utility Panel) if it doesn't open automatically, then press "Setup DOTween...": this will run the upgrade setup
|
3) Open DOTween's Utility Panel (Tools > Demigiant > DOTween Utility Panel) if it doesn't open automatically, then press "Setup DOTween...": this will run the upgrade setup
|
||||||
4) From the Add/Remove Modules panel that opens, activate/deactivate Modules for Unity systems and for external assets (Pro version only)
|
4) From the Add/Remove Modules panel that opens, activate/deactivate Modules for Unity systems and for external assets (Pro version only)
|
||||||
|
|
||||||
// GET STARTED //////////////////////////////////////////////
|
// GET STARTED //////////////////////////////////////////////
|
||||||
|
|
||||||
- After importing a new DOTween update, select DOTween's Utility Panel from the "Tools/Demigiant" menu (if it doesn't open automatically) and press the "Setup DOTween..." button to activate/deactivate Modules. You can also access a Preferences Tab from there to choose default settings for DOTween.
|
- After importing a new DOTween update, select DOTween's Utility Panel from the "Tools/Demigiant" menu (if it doesn't open automatically) and press the "Setup DOTween..." button to activate/deactivate Modules. You can also access a Preferences Tab from there to choose default settings for DOTween.
|
||||||
- In your code, add "using DG.Tweening" to each class where you want to use DOTween.
|
- In your code, add "using DG.Tweening" to each class where you want to use DOTween.
|
||||||
- You're ready to tween. Check out the links below for full documentation and license info.
|
- You're ready to tween. Check out the links below for full documentation and license info.
|
||||||
|
|
||||||
|
|
||||||
// LINKS ///////////////////////////////////////////////////////
|
// LINKS ///////////////////////////////////////////////////////
|
||||||
|
|
||||||
DOTween website (documentation, examples, etc): http://dotween.demigiant.com
|
DOTween website (documentation, examples, etc): http://dotween.demigiant.com
|
||||||
DOTween license: http://dotween.demigiant.com/license.php
|
DOTween license: http://dotween.demigiant.com/license.php
|
||||||
DOTween repository (Google Code): https://code.google.com/p/dotween/
|
DOTween repository (Google Code): https://code.google.com/p/dotween/
|
||||||
Demigiant website (documentation, examples, etc): http://www.demigiant.com
|
Demigiant website (documentation, examples, etc): http://www.demigiant.com
|
||||||
|
|
||||||
// NOTES //////////////////////////////////////////////////////
|
// NOTES //////////////////////////////////////////////////////
|
||||||
|
|
||||||
- DOTween's Utility Panel can be found under "Tools > Demigiant > DOTween Utility Panel" and also contains other useful options, plus a tab to set DOTween's preferences
|
- DOTween's Utility Panel can be found under "Tools > Demigiant > DOTween Utility Panel" and also contains other useful options, plus a tab to set DOTween's preferences
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: edff7c9c5dfec49dbae75dcfc0b847d3
|
|
||||||
folderAsset: yes
|
|
||||||
DefaultImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -1,54 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!114 &11400000
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 16995157, guid: a811bde74b26b53498b4f6d872b09b6d, type: 3}
|
|
||||||
m_Name: DOTweenSettings
|
|
||||||
m_EditorClassIdentifier: DOTween.dll::DG.Tweening.Core.DOTweenSettings
|
|
||||||
useSafeMode: 1
|
|
||||||
safeModeOptions:
|
|
||||||
logBehaviour: 2
|
|
||||||
nestedTweenFailureBehaviour: 0
|
|
||||||
timeScale: 1
|
|
||||||
unscaledTimeScale: 1
|
|
||||||
useSmoothDeltaTime: 0
|
|
||||||
maxSmoothUnscaledTime: 0.15
|
|
||||||
rewindCallbackMode: 0
|
|
||||||
showUnityEditorReport: 0
|
|
||||||
logBehaviour: 0
|
|
||||||
drawGizmos: 1
|
|
||||||
defaultRecyclable: 0
|
|
||||||
defaultAutoPlay: 3
|
|
||||||
defaultUpdateType: 0
|
|
||||||
defaultTimeScaleIndependent: 0
|
|
||||||
defaultEaseType: 6
|
|
||||||
defaultEaseOvershootOrAmplitude: 1.70158
|
|
||||||
defaultEasePeriod: 0
|
|
||||||
defaultAutoKill: 1
|
|
||||||
defaultLoopType: 0
|
|
||||||
debugMode: 0
|
|
||||||
debugStoreTargetId: 1
|
|
||||||
showPreviewPanel: 1
|
|
||||||
storeSettingsLocation: 0
|
|
||||||
modules:
|
|
||||||
showPanel: 0
|
|
||||||
audioEnabled: 1
|
|
||||||
physicsEnabled: 1
|
|
||||||
physics2DEnabled: 1
|
|
||||||
spriteEnabled: 1
|
|
||||||
uiEnabled: 1
|
|
||||||
textMeshProEnabled: 0
|
|
||||||
tk2DEnabled: 0
|
|
||||||
deAudioEnabled: 0
|
|
||||||
deUnityExtendedEnabled: 0
|
|
||||||
epoOutlineEnabled: 0
|
|
||||||
createASMDEF: 0
|
|
||||||
showPlayingTweens: 0
|
|
||||||
showPausedTweens: 0
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: f3fb915957f684d8abb924862bfc3cb3
|
|
||||||
NativeFormatImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
mainObjectFileID: 11400000
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -4,6 +4,7 @@ using SFB;
|
|||||||
|
|
||||||
public class DirectorySelect : MonoBehaviour
|
public class DirectorySelect : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
const string BASIC_DIRECTORY = "C://";
|
||||||
public string selectedFolderPath;
|
public string selectedFolderPath;
|
||||||
|
|
||||||
// OS별 기본 경로를 const 대신 static readonly 또는 private 필드로 정의
|
// OS별 기본 경로를 const 대신 static readonly 또는 private 필드로 정의
|
||||||
@@ -43,8 +44,81 @@ public class DirectorySelect : MonoBehaviour
|
|||||||
|
|
||||||
public void Search()
|
public void Search()
|
||||||
{
|
{
|
||||||
// 깃허브 UnityStandaloneFileBrowser 에셋 방식 // https://github.com/tonidurans/UnityStandaloneFileBrowser/tree/master/Package
|
// 1. 깃허브 UnityStandaloneFileBrowser 에셋 방식 // https://github.com/tonidurans/UnityStandaloneFileBrowser/tree/master/Package
|
||||||
StandaloneFileBrowser.OpenFolderPanelAsync("디렉토리 선택", inputDirectory.text, false, OnSelect);
|
StandaloneFileBrowser.OpenFolderPanelAsync("디렉토리 선택", inputDirectory.text, false, OnSelect);
|
||||||
|
|
||||||
|
// 2. 유니티 에디터 자체 기능 사용 (게임 빌드했을때 정상 작동하지 않음)
|
||||||
|
// string path = EditorUtility.OpenFolderPanel("디렉토리 선택", inputDirectory.text, "");
|
||||||
|
//
|
||||||
|
// // 사용자가 취소를 누르지 않고 유효한 경로를 선택했을 때만 업데이트
|
||||||
|
// if (!string.IsNullOrEmpty(path))
|
||||||
|
// {
|
||||||
|
// inputDirectory.text = path;
|
||||||
|
// selectedFolderPath = inputDirectory.text;
|
||||||
|
// Debug.Log("선택된 경로: " + selectedFolderPath);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// 3. DLL 라이브러리 방식
|
||||||
|
// // Windows
|
||||||
|
// if (UnityEngine.Application.platform == RuntimePlatform.WindowsPlayer ||
|
||||||
|
// UnityEngine.Application.platform == RuntimePlatform.WindowsEditor)
|
||||||
|
// {
|
||||||
|
// FolderBrowserDialog folderBrowserDialog = new FolderBrowserDialog();
|
||||||
|
// folderBrowserDialog.Description = "디렉토리 선택";
|
||||||
|
//
|
||||||
|
// if (folderBrowserDialog.ShowDialog() == DialogResult.OK)
|
||||||
|
// {
|
||||||
|
// selectedFolderPath = folderBrowserDialog.SelectedPath;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// // macOS (OSX) 및 Linux
|
||||||
|
// else if (UnityEngine.Application.platform == RuntimePlatform.OSXPlayer ||
|
||||||
|
// UnityEngine.Application.platform == RuntimePlatform.OSXEditor ||
|
||||||
|
// UnityEngine.Application.platform == RuntimePlatform.LinuxPlayer ||
|
||||||
|
// UnityEngine.Application.platform == RuntimePlatform.LinuxEditor)
|
||||||
|
// {
|
||||||
|
// // 1. OpenFolderPanelAsync를 사용하여 폴더 선택 팝업을 띄웁니다.
|
||||||
|
// // 비동기 방식이므로, 팝업이 닫힐 때 실행될 콜백 함수를 인자로 넘깁니다.
|
||||||
|
// StandaloneFileBrowser.OpenFolderPanelAsync(
|
||||||
|
// "경로를 선택하세요", // 팝업 창 제목
|
||||||
|
// inputDirectory.text, // 시작 경로: 현재 inputField의 경로를 기본값으로 사용
|
||||||
|
// false, // 다중 선택 허용 여부 (false: 폴더 1개만 선택)
|
||||||
|
// (string[] paths) => {
|
||||||
|
// // 2. 팝업이 닫힌 후 실행되는 콜백 함수 (람다 표현식)
|
||||||
|
// if (paths.Length > 0 && !string.IsNullOrEmpty(paths[0]))
|
||||||
|
// {
|
||||||
|
// // 선택된 경로가 있다면
|
||||||
|
// selectedFolderPath = paths[0];
|
||||||
|
//
|
||||||
|
// // InputField에 선택된 경로를 업데이트합니다.
|
||||||
|
// if (inputDirectory != null)
|
||||||
|
// {
|
||||||
|
// inputDirectory.text = selectedFolderPath;
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// Debug.Log("선택된 폴더 경로: " + selectedFolderPath);
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// // 선택 취소됨
|
||||||
|
// Debug.Log("폴더 선택이 취소되었습니다.");
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// );
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// // 기타 플랫폼 (예: WebGL, Android, iOS)
|
||||||
|
// // macOS/Linux와 동일한 경로를 기본값으로 사용하거나,
|
||||||
|
// // 해당 플랫폼에 맞는 다른 경로를 반환할 수 있습니다.
|
||||||
|
// // return MAC_LINUX_DIRECTORY;
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update is called once per frame
|
||||||
|
void Update()
|
||||||
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,28 +1,43 @@
|
|||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using System;
|
using System;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using TMPro;
|
using System.Windows.Forms; // 모니터 식별 및 스크린 정보
|
||||||
using System.Runtime.InteropServices;
|
using System.Drawing; // Bitmap 관련
|
||||||
|
|
||||||
#if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN
|
|
||||||
using System.Windows.Forms;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.Drawing.Imaging;
|
using System.Drawing.Imaging;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
using TMPro;
|
||||||
|
using Unity.VisualScripting;
|
||||||
|
using Application = UnityEngine.Application;
|
||||||
|
using Screen = System.Windows.Forms.Screen;
|
||||||
using Graphics = System.Drawing.Graphics;
|
using Graphics = System.Drawing.Graphics;
|
||||||
#endif
|
|
||||||
|
|
||||||
public class TakeScreen : MonoBehaviour
|
public class TakeScreen : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
// 캡처할 모니터 인덱스 (2 = 첫번째 모니터)
|
||||||
public int selectMonitorIndex = 2;
|
public int selectMonitorIndex = 2;
|
||||||
public int takeNumber;
|
public int takeNumber;
|
||||||
|
int monitorIndex = 0;
|
||||||
|
|
||||||
[SerializeField] TMP_InputField inputPrefix;
|
MONITORINFO selectMonitor;
|
||||||
[SerializeField] TMP_InputField inputResult;
|
int selectWidth;
|
||||||
[SerializeField] DirectorySelect directorySelector;
|
int selectHeight;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
TMP_InputField inputPrefix;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
TMP_InputField inputResult;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
DirectorySelect directorySelector;
|
||||||
|
|
||||||
|
// WinAPI 구조체
|
||||||
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
|
public struct RECT
|
||||||
|
{
|
||||||
|
public int left, top, right, bottom;
|
||||||
|
}
|
||||||
|
|
||||||
// --- Windows 전용 구조체 및 변수 ---
|
|
||||||
#if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN
|
|
||||||
[StructLayout(LayoutKind.Sequential)] public struct RECT { public int left, top, right, bottom; }
|
|
||||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
|
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
|
||||||
public struct MONITORINFO
|
public struct MONITORINFO
|
||||||
{
|
{
|
||||||
@@ -30,107 +45,109 @@ public class TakeScreen : MonoBehaviour
|
|||||||
public RECT rcMonitor;
|
public RECT rcMonitor;
|
||||||
public RECT rcWork;
|
public RECT rcWork;
|
||||||
public int dwFlags;
|
public int dwFlags;
|
||||||
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)] public string szDevice;
|
|
||||||
|
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
|
||||||
|
public string szDevice;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// WinAPI 델리게이트
|
||||||
private delegate bool MonitorEnumProc(IntPtr hMonitor, IntPtr hdcMonitor, ref RECT lprcMonitor, IntPtr dwData);
|
private delegate bool MonitorEnumProc(IntPtr hMonitor, IntPtr hdcMonitor, ref RECT lprcMonitor, IntPtr dwData);
|
||||||
[DllImport("user32.dll")] private static extern bool EnumDisplayMonitors(IntPtr hdc, IntPtr lprcClip, MonitorEnumProc lpfnEnum, IntPtr dwData);
|
|
||||||
[DllImport("user32.dll", CharSet = CharSet.Auto)] private static extern bool GetMonitorInfo(IntPtr hMonitor, ref MONITORINFO lpmi);
|
// WinAPI 함수
|
||||||
[DllImport("user32.dll")] private static extern IntPtr GetDC(IntPtr hWnd);
|
[DllImport("user32.dll")]
|
||||||
[DllImport("gdi32.dll")] private static extern IntPtr CreateCompatibleDC(IntPtr hdc);
|
private static extern bool EnumDisplayMonitors(IntPtr hdc, IntPtr lprcClip, MonitorEnumProc lpfnEnum, IntPtr dwData);
|
||||||
[DllImport("gdi32.dll")] private static extern IntPtr CreateCompatibleBitmap(IntPtr hdc, int width, int height);
|
|
||||||
[DllImport("gdi32.dll")] private static extern IntPtr SelectObject(IntPtr hdc, IntPtr hgdiobj);
|
[DllImport("user32.dll", CharSet = CharSet.Auto)]
|
||||||
[DllImport("gdi32.dll")] private static extern bool BitBlt(IntPtr hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, IntPtr hdcSrc, int nXSrc, int nYSrc, int dwRop);
|
private static extern bool GetMonitorInfo(IntPtr hMonitor, ref MONITORINFO lpmi);
|
||||||
[DllImport("gdi32.dll")] private static extern bool DeleteObject(IntPtr hObject);
|
|
||||||
[DllImport("gdi32.dll")] private static extern bool DeleteDC(IntPtr hdc);
|
[DllImport("user32.dll")]
|
||||||
[DllImport("user32.dll")] private static extern int ReleaseDC(IntPtr hWnd, IntPtr hDC);
|
private static extern IntPtr GetDC(IntPtr hWnd);
|
||||||
|
|
||||||
MONITORINFO selectMonitor;
|
[DllImport("gdi32.dll")]
|
||||||
int selectWidth;
|
private static extern IntPtr CreateCompatibleDC(IntPtr hdc);
|
||||||
int selectHeight;
|
|
||||||
int monitorIndex = 0;
|
[DllImport("gdi32.dll")]
|
||||||
#endif
|
private static extern IntPtr CreateCompatibleBitmap(IntPtr hdc, int width, int height);
|
||||||
|
|
||||||
|
[DllImport("gdi32.dll")]
|
||||||
|
private static extern IntPtr SelectObject(IntPtr hdc, IntPtr hgdiobj);
|
||||||
|
|
||||||
|
[DllImport("gdi32.dll")]
|
||||||
|
private static extern bool BitBlt(IntPtr hdcDest, int nXDest, int nYDest, int nWidth, int nHeight,
|
||||||
|
IntPtr hdcSrc, int nXSrc, int nYSrc, CopyPixelOperation dwRop);
|
||||||
|
|
||||||
|
[DllImport("gdi32.dll")]
|
||||||
|
private static extern bool DeleteObject(IntPtr hObject);
|
||||||
|
|
||||||
|
[DllImport("gdi32.dll")]
|
||||||
|
private static extern bool DeleteDC(IntPtr hdc);
|
||||||
|
|
||||||
|
[DllImport("user32.dll")]
|
||||||
|
private static extern int ReleaseDC(IntPtr hWnd, IntPtr hDC);
|
||||||
|
|
||||||
|
|
||||||
private void Start()
|
private void Start()
|
||||||
{
|
{
|
||||||
#if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN
|
Debug.Log("=== 모든 모니터 정보 ===");
|
||||||
EnumDisplayMonitors(IntPtr.Zero, IntPtr.Zero, MonitorCallback, IntPtr.Zero);
|
EnumDisplayMonitors(IntPtr.Zero, IntPtr.Zero, MonitorCallback, IntPtr.Zero);
|
||||||
#else
|
|
||||||
Debug.Log("macOS 환경입니다. 시스템 기본 스크린샷 기능을 사용합니다.");
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN
|
|
||||||
private bool MonitorCallback(IntPtr hMonitor, IntPtr hdcMonitor, ref RECT lprcMonitor, IntPtr dwData)
|
private bool MonitorCallback(IntPtr hMonitor, IntPtr hdcMonitor, ref RECT lprcMonitor, IntPtr dwData)
|
||||||
{
|
{
|
||||||
MONITORINFO mi = new MONITORINFO();
|
MONITORINFO mi = new MONITORINFO();
|
||||||
mi.cbSize = Marshal.SizeOf(typeof(MONITORINFO));
|
mi.cbSize = Marshal.SizeOf(typeof(MONITORINFO));
|
||||||
monitorIndex++;
|
monitorIndex++;
|
||||||
|
|
||||||
if (GetMonitorInfo(hMonitor, ref mi) && monitorIndex == selectMonitorIndex)
|
if (GetMonitorInfo(hMonitor, ref mi) && monitorIndex == selectMonitorIndex)
|
||||||
{
|
{
|
||||||
|
int width = mi.rcMonitor.right - mi.rcMonitor.left;
|
||||||
|
int height = mi.rcMonitor.bottom - mi.rcMonitor.top;
|
||||||
|
bool isPrimary = (mi.dwFlags & 1) != 0;
|
||||||
|
|
||||||
|
Debug.Log(
|
||||||
|
$"{mi.szDevice} 모니터 \n" +
|
||||||
|
$" - 해상도 : {width} x {height}\n" +
|
||||||
|
$" - 위치 : x = {mi.rcMonitor.left}, y = {mi.rcMonitor.top}\n" +
|
||||||
|
$" - 주 모니터 여부 : {isPrimary}\n"
|
||||||
|
);
|
||||||
|
|
||||||
selectMonitor = mi;
|
selectMonitor = mi;
|
||||||
selectWidth = mi.rcMonitor.right - mi.rcMonitor.left;
|
selectWidth = width;
|
||||||
selectHeight = mi.rcMonitor.bottom - mi.rcMonitor.top;
|
selectHeight = height;
|
||||||
}
|
}
|
||||||
return true;
|
|
||||||
|
return true; // 계속 나머지 모니터 순회
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
public void Take()
|
public void Take()
|
||||||
{
|
{
|
||||||
string fileName = $"{inputPrefix.text}_{takeNumber:D2}.png";
|
string fileName = $"{inputPrefix.text}_{string.Format("{0:D2}", takeNumber)}.png";
|
||||||
string savePath = Path.Combine(directorySelector.selectedFolderPath, fileName);
|
string savePath = Path.Combine(directorySelector.selectedFolderPath, fileName);
|
||||||
|
|
||||||
#if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN
|
Shot(selectMonitor.rcMonitor.left, selectMonitor.rcMonitor.top, selectWidth, selectHeight, savePath);
|
||||||
ShotWin(selectMonitor.rcMonitor.left, selectMonitor.rcMonitor.top, selectWidth, selectHeight, savePath);
|
|
||||||
#elif UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX
|
|
||||||
ShotMac(savePath);
|
|
||||||
#endif
|
|
||||||
inputResult.text = savePath;
|
|
||||||
takeNumber++;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Windows 캡처 로직
|
void Shot(int x, int y, int width, int height, string savePath)
|
||||||
#if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN
|
|
||||||
void ShotWin(int x, int y, int width, int height, string savePath)
|
|
||||||
{
|
{
|
||||||
IntPtr desktopDC = GetDC(IntPtr.Zero);
|
IntPtr desktopDC = GetDC(IntPtr.Zero);
|
||||||
IntPtr memoryDC = CreateCompatibleDC(desktopDC);
|
IntPtr memoryDC = CreateCompatibleDC(desktopDC);
|
||||||
IntPtr bitmap = CreateCompatibleBitmap(desktopDC, width, height);
|
IntPtr bitmap = CreateCompatibleBitmap(desktopDC, width, height);
|
||||||
IntPtr oldBitmap = SelectObject(memoryDC, bitmap);
|
IntPtr oldBitmap = SelectObject(memoryDC, bitmap);
|
||||||
|
|
||||||
// 0x00CC0020 = SRCCOPY, 0x40000000 = CAPTUREBLT
|
BitBlt(memoryDC, 0, 0, width, height, desktopDC, x, y, CopyPixelOperation.SourceCopy | CopyPixelOperation.CaptureBlt);
|
||||||
BitBlt(memoryDC, 0, 0, width, height, desktopDC, x, y, 0x00CC0020 | 0x40000000);
|
|
||||||
|
|
||||||
using (Bitmap bmp = Image.FromHbitmap(bitmap))
|
using (Bitmap bmp = Image.FromHbitmap(bitmap))
|
||||||
{
|
{
|
||||||
bmp.Save(savePath, ImageFormat.Png);
|
bmp.Save(savePath, ImageFormat.Png);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 정리
|
||||||
SelectObject(memoryDC, oldBitmap);
|
SelectObject(memoryDC, oldBitmap);
|
||||||
DeleteObject(bitmap);
|
DeleteObject(bitmap);
|
||||||
DeleteDC(memoryDC);
|
DeleteDC(memoryDC);
|
||||||
ReleaseDC(IntPtr.Zero, desktopDC);
|
ReleaseDC(desktopDC, memoryDC);
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// macOS 캡처 로직
|
inputResult.text = savePath;
|
||||||
#if UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX
|
|
||||||
void ShotMac(string savePath)
|
|
||||||
{
|
|
||||||
// macOS는 시스템 명령어를 통해 스크린샷을 찍는 것이 가장 안정적입니다.
|
|
||||||
// -x: 소리 없음, -C: 커서 포함(선택)
|
|
||||||
// 만약 특정 모니터만 찍어야 한다면 -D 옵션을 사용합니다 (예: -D 1)
|
|
||||||
string args = $"-x \"{savePath}\"";
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
System.Diagnostics.Process.Start("screencapture", args);
|
|
||||||
Debug.Log($"macOS 스크린샷 저장 완료: {savePath}");
|
|
||||||
}
|
|
||||||
catch (Exception e)
|
|
||||||
{
|
|
||||||
Debug.LogError($"macOS 스크린샷 실패: {e.Message}");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
#endif
|
}
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 091a824e25c0b59489093755fb9224e6
|
|
||||||
folderAsset: yes
|
|
||||||
DefaultImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -1,778 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!114 &11400000
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 15003, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name: Windows
|
|
||||||
m_EditorClassIdentifier: UnityEditor.dll::UnityEditor.Build.Profile.BuildProfile
|
|
||||||
m_AssetVersion: 1
|
|
||||||
m_BuildTarget: 19
|
|
||||||
m_Subtarget: 2
|
|
||||||
m_PlatformId: 4e3c793746204150860bf175a9a41a05
|
|
||||||
m_PlatformBuildProfile:
|
|
||||||
rid: 1527313263111700547
|
|
||||||
m_OverrideGlobalSceneList: 0
|
|
||||||
m_Scenes: []
|
|
||||||
m_ScriptingDefines: []
|
|
||||||
m_PlayerSettingsYaml:
|
|
||||||
m_Settings:
|
|
||||||
- line: '| PlayerSettings:'
|
|
||||||
- line: '| m_ObjectHideFlags: 0'
|
|
||||||
- line: '| serializedVersion: 28'
|
|
||||||
- line: '| productGUID: 628a94fce16164265a5492dda8ed06cb'
|
|
||||||
- line: '| AndroidProfiler: 0'
|
|
||||||
- line: '| AndroidFilterTouchesWhenObscured: 0'
|
|
||||||
- line: '| AndroidEnableSustainedPerformanceMode: 0'
|
|
||||||
- line: '| defaultScreenOrientation: 4'
|
|
||||||
- line: '| targetDevice: 2'
|
|
||||||
- line: '| useOnDemandResources: 0'
|
|
||||||
- line: '| accelerometerFrequency: 60'
|
|
||||||
- line: '| companyName: Cooney Studio'
|
|
||||||
- line: '| productName: Screen Capture'
|
|
||||||
- line: '| defaultCursor: {instanceID: 0}'
|
|
||||||
- line: '| cursorHotspot: {x: 0, y: 0}'
|
|
||||||
- line: '| m_SplashScreenBackgroundColor: {r: 0.8, g: 0.8, b: 0.8, a: 1}'
|
|
||||||
- line: '| m_ShowUnitySplashScreen: 1'
|
|
||||||
- line: '| m_ShowUnitySplashLogo: 1'
|
|
||||||
- line: '| m_SplashScreenOverlayOpacity: 1'
|
|
||||||
- line: '| m_SplashScreenAnimation: 1'
|
|
||||||
- line: '| m_SplashScreenLogoStyle: 0'
|
|
||||||
- line: '| m_SplashScreenDrawMode: 0'
|
|
||||||
- line: '| m_SplashScreenBackgroundAnimationZoom: 1'
|
|
||||||
- line: '| m_SplashScreenLogoAnimationZoom: 1'
|
|
||||||
- line: '| m_SplashScreenBackgroundLandscapeAspect: 1'
|
|
||||||
- line: '| m_SplashScreenBackgroundPortraitAspect: 1'
|
|
||||||
- line: '| m_SplashScreenBackgroundLandscapeUvs:'
|
|
||||||
- line: '| serializedVersion: 2'
|
|
||||||
- line: '| x: 0'
|
|
||||||
- line: '| y: 0'
|
|
||||||
- line: '| width: 1'
|
|
||||||
- line: '| height: 1'
|
|
||||||
- line: '| m_SplashScreenBackgroundPortraitUvs:'
|
|
||||||
- line: '| serializedVersion: 2'
|
|
||||||
- line: '| x: 0'
|
|
||||||
- line: '| y: 0'
|
|
||||||
- line: '| width: 1'
|
|
||||||
- line: '| height: 1'
|
|
||||||
- line: '| m_SplashScreenLogos: []'
|
|
||||||
- line: '| m_VirtualRealitySplashScreen: {instanceID: 0}'
|
|
||||||
- line: '| m_HolographicTrackingLossScreen: {instanceID: 0}'
|
|
||||||
- line: '| defaultScreenWidth: 480'
|
|
||||||
- line: '| defaultScreenHeight: 320'
|
|
||||||
- line: '| defaultScreenWidthWeb: 960'
|
|
||||||
- line: '| defaultScreenHeightWeb: 600'
|
|
||||||
- line: '| m_StereoRenderingPath: 0'
|
|
||||||
- line: '| m_ActiveColorSpace: 1'
|
|
||||||
- line: '| unsupportedMSAAFallback: 0'
|
|
||||||
- line: '| m_SpriteBatchMaxVertexCount: 65535'
|
|
||||||
- line: '| m_SpriteBatchVertexThreshold: 300'
|
|
||||||
- line: '| m_MTRendering: 1'
|
|
||||||
- line: '| mipStripping: 0'
|
|
||||||
- line: '| numberOfMipsStripped: 0'
|
|
||||||
- line: '| numberOfMipsStrippedPerMipmapLimitGroup: {}'
|
|
||||||
- line: '| m_StackTraceTypes: 010000000100000001000000010000000100000001000000'
|
|
||||||
- line: '| iosShowActivityIndicatorOnLoading: -1'
|
|
||||||
- line: '| androidShowActivityIndicatorOnLoading: -1'
|
|
||||||
- line: '| iosUseCustomAppBackgroundBehavior: 0'
|
|
||||||
- line: '| allowedAutorotateToPortrait: 1'
|
|
||||||
- line: '| allowedAutorotateToPortraitUpsideDown: 1'
|
|
||||||
- line: '| allowedAutorotateToLandscapeRight: 1'
|
|
||||||
- line: '| allowedAutorotateToLandscapeLeft: 1'
|
|
||||||
- line: '| useOSAutorotation: 1'
|
|
||||||
- line: '| use32BitDisplayBuffer: 1'
|
|
||||||
- line: '| preserveFramebufferAlpha: 0'
|
|
||||||
- line: '| disableDepthAndStencilBuffers: 0'
|
|
||||||
- line: '| androidStartInFullscreen: 1'
|
|
||||||
- line: '| androidRenderOutsideSafeArea: 1'
|
|
||||||
- line: '| androidUseSwappy: 1'
|
|
||||||
- line: '| androidDisplayOptions: 1'
|
|
||||||
- line: '| androidBlitType: 0'
|
|
||||||
- line: '| androidResizeableActivity: 1'
|
|
||||||
- line: '| androidDefaultWindowWidth: 1920'
|
|
||||||
- line: '| androidDefaultWindowHeight: 1080'
|
|
||||||
- line: '| androidMinimumWindowWidth: 400'
|
|
||||||
- line: '| androidMinimumWindowHeight: 300'
|
|
||||||
- line: '| androidFullscreenMode: 1'
|
|
||||||
- line: '| androidAutoRotationBehavior: 1'
|
|
||||||
- line: '| androidPredictiveBackSupport: 0'
|
|
||||||
- line: '| androidApplicationEntry: 2'
|
|
||||||
- line: '| defaultIsNativeResolution: 1'
|
|
||||||
- line: '| macRetinaSupport: 1'
|
|
||||||
- line: '| runInBackground: 1'
|
|
||||||
- line: '| muteOtherAudioSources: 0'
|
|
||||||
- line: '| Prepare IOS For Recording: 0'
|
|
||||||
- line: '| Force IOS Speakers When Recording: 0'
|
|
||||||
- line: '| audioSpatialExperience: 0'
|
|
||||||
- line: '| deferSystemGesturesMode: 0'
|
|
||||||
- line: '| hideHomeButton: 0'
|
|
||||||
- line: '| submitAnalytics: 1'
|
|
||||||
- line: '| usePlayerLog: 0'
|
|
||||||
- line: '| dedicatedServerOptimizations: 1'
|
|
||||||
- line: '| bakeCollisionMeshes: 0'
|
|
||||||
- line: '| forceSingleInstance: 0'
|
|
||||||
- line: '| useFlipModelSwapchain: 1'
|
|
||||||
- line: '| resizableWindow: 0'
|
|
||||||
- line: '| useMacAppStoreValidation: 0'
|
|
||||||
- line: '| macAppStoreCategory: public.app-category.games'
|
|
||||||
- line: '| gpuSkinning: 0'
|
|
||||||
- line: '| meshDeformation: 0'
|
|
||||||
- line: '| xboxPIXTextureCapture: 0'
|
|
||||||
- line: '| xboxEnableAvatar: 0'
|
|
||||||
- line: '| xboxEnableKinect: 0'
|
|
||||||
- line: '| xboxEnableKinectAutoTracking: 0'
|
|
||||||
- line: '| xboxEnableFitness: 0'
|
|
||||||
- line: '| visibleInBackground: 1'
|
|
||||||
- line: '| allowFullscreenSwitch: 0'
|
|
||||||
- line: '| fullscreenMode: 3'
|
|
||||||
- line: '| xboxSpeechDB: 0'
|
|
||||||
- line: '| xboxEnableHeadOrientation: 0'
|
|
||||||
- line: '| xboxEnableGuest: 0'
|
|
||||||
- line: '| xboxEnablePIXSampling: 0'
|
|
||||||
- line: '| metalFramebufferOnly: 0'
|
|
||||||
- line: '| xboxOneResolution: 0'
|
|
||||||
- line: '| xboxOneSResolution: 0'
|
|
||||||
- line: '| xboxOneXResolution: 3'
|
|
||||||
- line: '| xboxOneMonoLoggingLevel: 0'
|
|
||||||
- line: '| xboxOneLoggingLevel: 1'
|
|
||||||
- line: '| xboxOneDisableEsram: 0'
|
|
||||||
- line: '| xboxOneEnableTypeOptimization: 0'
|
|
||||||
- line: '| xboxOnePresentImmediateThreshold: 0'
|
|
||||||
- line: '| switchQueueCommandMemory: 1048576'
|
|
||||||
- line: '| switchQueueControlMemory: 16384'
|
|
||||||
- line: '| switchQueueComputeMemory: 262144'
|
|
||||||
- line: '| switchNVNShaderPoolsGranularity: 33554432'
|
|
||||||
- line: '| switchNVNDefaultPoolsGranularity: 16777216'
|
|
||||||
- line: '| switchNVNOtherPoolsGranularity: 16777216'
|
|
||||||
- line: '| switchGpuScratchPoolGranularity: 2097152'
|
|
||||||
- line: '| switchAllowGpuScratchShrinking: 0'
|
|
||||||
- line: '| switchNVNMaxPublicTextureIDCount: 0'
|
|
||||||
- line: '| switchNVNMaxPublicSamplerIDCount: 0'
|
|
||||||
- line: '| switchMaxWorkerMultiple: 8'
|
|
||||||
- line: '| switchNVNGraphicsFirmwareMemory: 32'
|
|
||||||
- line: '| switchGraphicsJobsSyncAfterKick: 1'
|
|
||||||
- line: '| vulkanNumSwapchainBuffers: 3'
|
|
||||||
- line: '| vulkanEnableSetSRGBWrite: 0'
|
|
||||||
- line: '| vulkanEnablePreTransform: 0'
|
|
||||||
- line: '| vulkanEnableLateAcquireNextImage: 0'
|
|
||||||
- line: '| vulkanEnableCommandBufferRecycling: 1'
|
|
||||||
- line: '| loadStoreDebugModeEnabled: 0'
|
|
||||||
- line: '| visionOSBundleVersion: 1.0'
|
|
||||||
- line: '| tvOSBundleVersion: 1.0'
|
|
||||||
- line: '| bundleVersion: 1.0'
|
|
||||||
- line: '| preloadedAssets:'
|
|
||||||
- line: '| - {fileID: -944628639613478452, guid: 2bcd2660ca9b64942af0de543d8d7100,
|
|
||||||
type: 3}'
|
|
||||||
- line: '| metroInputSource: 0'
|
|
||||||
- line: '| wsaTransparentSwapchain: 0'
|
|
||||||
- line: '| m_HolographicPauseOnTrackingLoss: 1'
|
|
||||||
- line: '| xboxOneDisableKinectGpuReservation: 1'
|
|
||||||
- line: '| xboxOneEnable7thCore: 1'
|
|
||||||
- line: '| vrSettings:'
|
|
||||||
- line: '| enable360StereoCapture: 0'
|
|
||||||
- line: '| isWsaHolographicRemotingEnabled: 0'
|
|
||||||
- line: '| enableFrameTimingStats: 0'
|
|
||||||
- line: '| enableOpenGLProfilerGPURecorders: 1'
|
|
||||||
- line: '| allowHDRDisplaySupport: 0'
|
|
||||||
- line: '| useHDRDisplay: 0'
|
|
||||||
- line: '| hdrBitDepth: 0'
|
|
||||||
- line: '| m_ColorGamuts: 00000000'
|
|
||||||
- line: '| targetPixelDensity: 30'
|
|
||||||
- line: '| resolutionScalingMode: 0'
|
|
||||||
- line: '| resetResolutionOnWindowResize: 0'
|
|
||||||
- line: '| androidSupportedAspectRatio: 1'
|
|
||||||
- line: '| androidMaxAspectRatio: 2.4'
|
|
||||||
- line: '| androidMinAspectRatio: 1'
|
|
||||||
- line: '| applicationIdentifier:'
|
|
||||||
- line: '| Standalone: com.DefaultCompany.2D-URP'
|
|
||||||
- line: '| buildNumber:'
|
|
||||||
- line: '| Standalone: 0'
|
|
||||||
- line: '| VisionOS: 0'
|
|
||||||
- line: '| iPhone: 0'
|
|
||||||
- line: '| tvOS: 0'
|
|
||||||
- line: '| overrideDefaultApplicationIdentifier: 1'
|
|
||||||
- line: '| AndroidBundleVersionCode: 1'
|
|
||||||
- line: '| AndroidMinSdkVersion: 23'
|
|
||||||
- line: '| AndroidTargetSdkVersion: 0'
|
|
||||||
- line: '| AndroidPreferredInstallLocation: 1'
|
|
||||||
- line: '| aotOptions: '
|
|
||||||
- line: '| stripEngineCode: 1'
|
|
||||||
- line: '| iPhoneStrippingLevel: 0'
|
|
||||||
- line: '| iPhoneScriptCallOptimization: 0'
|
|
||||||
- line: '| ForceInternetPermission: 0'
|
|
||||||
- line: '| ForceSDCardPermission: 0'
|
|
||||||
- line: '| CreateWallpaper: 0'
|
|
||||||
- line: '| androidSplitApplicationBinary: 0'
|
|
||||||
- line: '| keepLoadedShadersAlive: 0'
|
|
||||||
- line: '| StripUnusedMeshComponents: 0'
|
|
||||||
- line: '| strictShaderVariantMatching: 0'
|
|
||||||
- line: '| VertexChannelCompressionMask: 4054'
|
|
||||||
- line: '| iPhoneSdkVersion: 988'
|
|
||||||
- line: '| iOSSimulatorArchitecture: 0'
|
|
||||||
- line: '| iOSTargetOSVersionString: 13.0'
|
|
||||||
- line: '| tvOSSdkVersion: 0'
|
|
||||||
- line: '| tvOSSimulatorArchitecture: 0'
|
|
||||||
- line: '| tvOSRequireExtendedGameController: 0'
|
|
||||||
- line: '| tvOSTargetOSVersionString: 13.0'
|
|
||||||
- line: '| VisionOSSdkVersion: 0'
|
|
||||||
- line: '| VisionOSTargetOSVersionString: 1.0'
|
|
||||||
- line: '| uIPrerenderedIcon: 0'
|
|
||||||
- line: '| uIRequiresPersistentWiFi: 0'
|
|
||||||
- line: '| uIRequiresFullScreen: 1'
|
|
||||||
- line: '| uIStatusBarHidden: 1'
|
|
||||||
- line: '| uIExitOnSuspend: 0'
|
|
||||||
- line: '| uIStatusBarStyle: 0'
|
|
||||||
- line: '| appleTVSplashScreen: {instanceID: 0}'
|
|
||||||
- line: '| appleTVSplashScreen2x: {instanceID: 0}'
|
|
||||||
- line: '| tvOSSmallIconLayers: []'
|
|
||||||
- line: '| tvOSSmallIconLayers2x: []'
|
|
||||||
- line: '| tvOSLargeIconLayers: []'
|
|
||||||
- line: '| tvOSLargeIconLayers2x: []'
|
|
||||||
- line: '| tvOSTopShelfImageLayers: []'
|
|
||||||
- line: '| tvOSTopShelfImageLayers2x: []'
|
|
||||||
- line: '| tvOSTopShelfImageWideLayers: []'
|
|
||||||
- line: '| tvOSTopShelfImageWideLayers2x: []'
|
|
||||||
- line: '| iOSLaunchScreenType: 0'
|
|
||||||
- line: '| iOSLaunchScreenPortrait: {instanceID: 0}'
|
|
||||||
- line: '| iOSLaunchScreenLandscape: {instanceID: 0}'
|
|
||||||
- line: '| iOSLaunchScreenBackgroundColor:'
|
|
||||||
- line: '| serializedVersion: 2'
|
|
||||||
- line: '| rgba: 0'
|
|
||||||
- line: '| iOSLaunchScreenFillPct: 100'
|
|
||||||
- line: '| iOSLaunchScreenSize: 100'
|
|
||||||
- line: '| iOSLaunchScreeniPadType: 0'
|
|
||||||
- line: '| iOSLaunchScreeniPadImage: {instanceID: 0}'
|
|
||||||
- line: '| iOSLaunchScreeniPadBackgroundColor:'
|
|
||||||
- line: '| serializedVersion: 2'
|
|
||||||
- line: '| rgba: 0'
|
|
||||||
- line: '| iOSLaunchScreeniPadFillPct: 100'
|
|
||||||
- line: '| iOSLaunchScreeniPadSize: 100'
|
|
||||||
- line: '| iOSLaunchScreenCustomStoryboardPath: '
|
|
||||||
- line: '| iOSLaunchScreeniPadCustomStoryboardPath: '
|
|
||||||
- line: '| iOSDeviceRequirements: []'
|
|
||||||
- line: '| iOSURLSchemes: []'
|
|
||||||
- line: '| macOSURLSchemes: []'
|
|
||||||
- line: '| iOSBackgroundModes: 0'
|
|
||||||
- line: '| iOSMetalForceHardShadows: 0'
|
|
||||||
- line: '| metalEditorSupport: 1'
|
|
||||||
- line: '| metalAPIValidation: 1'
|
|
||||||
- line: '| metalCompileShaderBinary: 0'
|
|
||||||
- line: '| iOSRenderExtraFrameOnPause: 0'
|
|
||||||
- line: '| iosCopyPluginsCodeInsteadOfSymlink: 0'
|
|
||||||
- line: '| appleDeveloperTeamID: '
|
|
||||||
- line: '| iOSManualSigningProvisioningProfileID: '
|
|
||||||
- line: '| tvOSManualSigningProvisioningProfileID: '
|
|
||||||
- line: '| VisionOSManualSigningProvisioningProfileID: '
|
|
||||||
- line: '| iOSManualSigningProvisioningProfileType: 0'
|
|
||||||
- line: '| tvOSManualSigningProvisioningProfileType: 0'
|
|
||||||
- line: '| VisionOSManualSigningProvisioningProfileType: 0'
|
|
||||||
- line: '| appleEnableAutomaticSigning: 0'
|
|
||||||
- line: '| iOSRequireARKit: 0'
|
|
||||||
- line: '| iOSAutomaticallyDetectAndAddCapabilities: 1'
|
|
||||||
- line: '| appleEnableProMotion: 0'
|
|
||||||
- line: '| shaderPrecisionModel: 0'
|
|
||||||
- line: '| clonedFromGUID: c19f32bac17ee4170b3bf8a6a0333fb9'
|
|
||||||
- line: '| templatePackageId: com.unity.template.universal-2d@6.1.1'
|
|
||||||
- line: '| templateDefaultScene: Assets/Scenes/SampleScene.unity'
|
|
||||||
- line: '| useCustomMainManifest: 0'
|
|
||||||
- line: '| useCustomLauncherManifest: 0'
|
|
||||||
- line: '| useCustomMainGradleTemplate: 0'
|
|
||||||
- line: '| useCustomLauncherGradleManifest: 0'
|
|
||||||
- line: '| useCustomBaseGradleTemplate: 0'
|
|
||||||
- line: '| useCustomGradlePropertiesTemplate: 0'
|
|
||||||
- line: '| useCustomGradleSettingsTemplate: 0'
|
|
||||||
- line: '| useCustomProguardFile: 0'
|
|
||||||
- line: '| AndroidTargetArchitectures: 2'
|
|
||||||
- line: '| AndroidSplashScreenScale: 0'
|
|
||||||
- line: '| androidSplashScreen: {instanceID: 0}'
|
|
||||||
- line: '| AndroidKeystoreName: '
|
|
||||||
- line: '| AndroidKeyaliasName: '
|
|
||||||
- line: '| AndroidEnableArmv9SecurityFeatures: 0'
|
|
||||||
- line: '| AndroidEnableArm64MTE: 0'
|
|
||||||
- line: '| AndroidBuildApkPerCpuArchitecture: 0'
|
|
||||||
- line: '| AndroidTVCompatibility: 0'
|
|
||||||
- line: '| AndroidIsGame: 1'
|
|
||||||
- line: '| androidAppCategory: 3'
|
|
||||||
- line: '| useAndroidAppCategory: 1'
|
|
||||||
- line: '| androidAppCategoryOther: '
|
|
||||||
- line: '| AndroidEnableTango: 0'
|
|
||||||
- line: '| androidEnableBanner: 1'
|
|
||||||
- line: '| androidUseLowAccuracyLocation: 0'
|
|
||||||
- line: '| androidUseCustomKeystore: 0'
|
|
||||||
- line: '| m_AndroidBanners:'
|
|
||||||
- line: '| - width: 320'
|
|
||||||
- line: '| height: 180'
|
|
||||||
- line: '| banner: {instanceID: 0}'
|
|
||||||
- line: '| androidGamepadSupportLevel: 0'
|
|
||||||
- line: '| AndroidMinifyRelease: 0'
|
|
||||||
- line: '| AndroidMinifyDebug: 0'
|
|
||||||
- line: '| AndroidValidateAppBundleSize: 1'
|
|
||||||
- line: '| AndroidAppBundleSizeToValidate: 150'
|
|
||||||
- line: '| AndroidReportGooglePlayAppDependencies: 1'
|
|
||||||
- line: '| androidSymbolsSizeThreshold: 800'
|
|
||||||
- line: '| m_BuildTargetIcons:'
|
|
||||||
- line: '| - m_BuildTarget: '
|
|
||||||
- line: '| m_Icons:'
|
|
||||||
- line: '| - serializedVersion: 2'
|
|
||||||
- line: '| m_Icon: {fileID: 2800000, guid: 5417d9d7d462af345919661548536f46,
|
|
||||||
type: 3}'
|
|
||||||
- line: '| m_Width: 128'
|
|
||||||
- line: '| m_Height: 128'
|
|
||||||
- line: '| m_Kind: 0'
|
|
||||||
- line: '| m_BuildTargetPlatformIcons: []'
|
|
||||||
- line: '| m_BuildTargetBatching:'
|
|
||||||
- line: '| - m_BuildTarget: Standalone'
|
|
||||||
- line: '| m_StaticBatching: 1'
|
|
||||||
- line: '| m_DynamicBatching: 0'
|
|
||||||
- line: '| m_BuildTargetShaderSettings: []'
|
|
||||||
- line: '| m_BuildTargetGraphicsJobs: []'
|
|
||||||
- line: '| m_BuildTargetGraphicsJobMode: []'
|
|
||||||
- line: '| m_BuildTargetGraphicsAPIs: []'
|
|
||||||
- line: '| m_BuildTargetVRSettings: []'
|
|
||||||
- line: '| m_DefaultShaderChunkSizeInMB: 16'
|
|
||||||
- line: '| m_DefaultShaderChunkCount: 0'
|
|
||||||
- line: '| openGLRequireES31: 0'
|
|
||||||
- line: '| openGLRequireES31AEP: 0'
|
|
||||||
- line: '| openGLRequireES32: 0'
|
|
||||||
- line: '| m_TemplateCustomTags: {}'
|
|
||||||
- line: '| mobileMTRendering:'
|
|
||||||
- line: '| Android: 1'
|
|
||||||
- line: '| iPhone: 1'
|
|
||||||
- line: '| tvOS: 1'
|
|
||||||
- line: '| m_BuildTargetGroupLightmapEncodingQuality: []'
|
|
||||||
- line: '| m_BuildTargetGroupHDRCubemapEncodingQuality: []'
|
|
||||||
- line: '| m_BuildTargetGroupLightmapSettings: []'
|
|
||||||
- line: '| m_BuildTargetGroupLoadStoreDebugModeSettings: []'
|
|
||||||
- line: '| m_BuildTargetNormalMapEncoding: []'
|
|
||||||
- line: '| m_BuildTargetDefaultTextureCompressionFormat: []'
|
|
||||||
- line: '| playModeTestRunnerEnabled: 0'
|
|
||||||
- line: '| runPlayModeTestAsEditModeTest: 0'
|
|
||||||
- line: '| actionOnDotNetUnhandledException: 1'
|
|
||||||
- line: '| editorGfxJobOverride: 1'
|
|
||||||
- line: '| enableInternalProfiler: 0'
|
|
||||||
- line: '| logObjCUncaughtExceptions: 1'
|
|
||||||
- line: '| enableCrashReportAPI: 0'
|
|
||||||
- line: '| cameraUsageDescription: '
|
|
||||||
- line: '| locationUsageDescription: '
|
|
||||||
- line: '| microphoneUsageDescription: '
|
|
||||||
- line: '| bluetoothUsageDescription: '
|
|
||||||
- line: '| macOSTargetOSVersion: 11.0'
|
|
||||||
- line: '| switchNMETAOverride: '
|
|
||||||
- line: '| switchNetLibKey: '
|
|
||||||
- line: '| switchSocketMemoryPoolSize: 6144'
|
|
||||||
- line: '| switchSocketAllocatorPoolSize: 128'
|
|
||||||
- line: '| switchSocketConcurrencyLimit: 14'
|
|
||||||
- line: '| switchScreenResolutionBehavior: 2'
|
|
||||||
- line: '| switchUseCPUProfiler: 0'
|
|
||||||
- line: '| switchEnableFileSystemTrace: 0'
|
|
||||||
- line: '| switchLTOSetting: 0'
|
|
||||||
- line: '| switchApplicationID: 0x01004b9000490000'
|
|
||||||
- line: '| switchNSODependencies: '
|
|
||||||
- line: '| switchCompilerFlags: '
|
|
||||||
- line: '| switchTitleNames_0: '
|
|
||||||
- line: '| switchTitleNames_1: '
|
|
||||||
- line: '| switchTitleNames_2: '
|
|
||||||
- line: '| switchTitleNames_3: '
|
|
||||||
- line: '| switchTitleNames_4: '
|
|
||||||
- line: '| switchTitleNames_5: '
|
|
||||||
- line: '| switchTitleNames_6: '
|
|
||||||
- line: '| switchTitleNames_7: '
|
|
||||||
- line: '| switchTitleNames_8: '
|
|
||||||
- line: '| switchTitleNames_9: '
|
|
||||||
- line: '| switchTitleNames_10: '
|
|
||||||
- line: '| switchTitleNames_11: '
|
|
||||||
- line: '| switchTitleNames_12: '
|
|
||||||
- line: '| switchTitleNames_13: '
|
|
||||||
- line: '| switchTitleNames_14: '
|
|
||||||
- line: '| switchTitleNames_15: '
|
|
||||||
- line: '| switchPublisherNames_0: '
|
|
||||||
- line: '| switchPublisherNames_1: '
|
|
||||||
- line: '| switchPublisherNames_2: '
|
|
||||||
- line: '| switchPublisherNames_3: '
|
|
||||||
- line: '| switchPublisherNames_4: '
|
|
||||||
- line: '| switchPublisherNames_5: '
|
|
||||||
- line: '| switchPublisherNames_6: '
|
|
||||||
- line: '| switchPublisherNames_7: '
|
|
||||||
- line: '| switchPublisherNames_8: '
|
|
||||||
- line: '| switchPublisherNames_9: '
|
|
||||||
- line: '| switchPublisherNames_10: '
|
|
||||||
- line: '| switchPublisherNames_11: '
|
|
||||||
- line: '| switchPublisherNames_12: '
|
|
||||||
- line: '| switchPublisherNames_13: '
|
|
||||||
- line: '| switchPublisherNames_14: '
|
|
||||||
- line: '| switchPublisherNames_15: '
|
|
||||||
- line: '| switchIcons_0: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_1: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_2: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_3: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_4: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_5: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_6: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_7: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_8: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_9: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_10: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_11: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_12: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_13: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_14: {instanceID: 0}'
|
|
||||||
- line: '| switchIcons_15: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_0: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_1: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_2: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_3: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_4: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_5: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_6: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_7: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_8: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_9: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_10: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_11: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_12: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_13: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_14: {instanceID: 0}'
|
|
||||||
- line: '| switchSmallIcons_15: {instanceID: 0}'
|
|
||||||
- line: '| switchManualHTML: '
|
|
||||||
- line: '| switchAccessibleURLs: '
|
|
||||||
- line: '| switchLegalInformation: '
|
|
||||||
- line: '| switchMainThreadStackSize: 1048576'
|
|
||||||
- line: '| switchPresenceGroupId: '
|
|
||||||
- line: '| switchLogoHandling: 0'
|
|
||||||
- line: '| switchReleaseVersion: 0'
|
|
||||||
- line: '| switchDisplayVersion: 1.0.0'
|
|
||||||
- line: '| switchStartupUserAccount: 0'
|
|
||||||
- line: '| switchSupportedLanguagesMask: 0'
|
|
||||||
- line: '| switchLogoType: 0'
|
|
||||||
- line: '| switchApplicationErrorCodeCategory: '
|
|
||||||
- line: '| switchUserAccountSaveDataSize: 0'
|
|
||||||
- line: '| switchUserAccountSaveDataJournalSize: 0'
|
|
||||||
- line: '| switchApplicationAttribute: 0'
|
|
||||||
- line: '| switchCardSpecSize: -1'
|
|
||||||
- line: '| switchCardSpecClock: -1'
|
|
||||||
- line: '| switchRatingsMask: 0'
|
|
||||||
- line: '| switchRatingsInt_0: 0'
|
|
||||||
- line: '| switchRatingsInt_1: 0'
|
|
||||||
- line: '| switchRatingsInt_2: 0'
|
|
||||||
- line: '| switchRatingsInt_3: 0'
|
|
||||||
- line: '| switchRatingsInt_4: 0'
|
|
||||||
- line: '| switchRatingsInt_5: 0'
|
|
||||||
- line: '| switchRatingsInt_6: 0'
|
|
||||||
- line: '| switchRatingsInt_7: 0'
|
|
||||||
- line: '| switchRatingsInt_8: 0'
|
|
||||||
- line: '| switchRatingsInt_9: 0'
|
|
||||||
- line: '| switchRatingsInt_10: 0'
|
|
||||||
- line: '| switchRatingsInt_11: 0'
|
|
||||||
- line: '| switchRatingsInt_12: 0'
|
|
||||||
- line: '| switchLocalCommunicationIds_0: '
|
|
||||||
- line: '| switchLocalCommunicationIds_1: '
|
|
||||||
- line: '| switchLocalCommunicationIds_2: '
|
|
||||||
- line: '| switchLocalCommunicationIds_3: '
|
|
||||||
- line: '| switchLocalCommunicationIds_4: '
|
|
||||||
- line: '| switchLocalCommunicationIds_5: '
|
|
||||||
- line: '| switchLocalCommunicationIds_6: '
|
|
||||||
- line: '| switchLocalCommunicationIds_7: '
|
|
||||||
- line: '| switchParentalControl: 0'
|
|
||||||
- line: '| switchAllowsScreenshot: 1'
|
|
||||||
- line: '| switchAllowsVideoCapturing: 1'
|
|
||||||
- line: '| switchAllowsRuntimeAddOnContentInstall: 0'
|
|
||||||
- line: '| switchDataLossConfirmation: 0'
|
|
||||||
- line: '| switchUserAccountLockEnabled: 0'
|
|
||||||
- line: '| switchSystemResourceMemory: 16777216'
|
|
||||||
- line: '| switchSupportedNpadStyles: 22'
|
|
||||||
- line: '| switchNativeFsCacheSize: 32'
|
|
||||||
- line: '| switchIsHoldTypeHorizontal: 0'
|
|
||||||
- line: '| switchSupportedNpadCount: 8'
|
|
||||||
- line: '| switchEnableTouchScreen: 1'
|
|
||||||
- line: '| switchSocketConfigEnabled: 0'
|
|
||||||
- line: '| switchTcpInitialSendBufferSize: 32'
|
|
||||||
- line: '| switchTcpInitialReceiveBufferSize: 64'
|
|
||||||
- line: '| switchTcpAutoSendBufferSizeMax: 256'
|
|
||||||
- line: '| switchTcpAutoReceiveBufferSizeMax: 256'
|
|
||||||
- line: '| switchUdpSendBufferSize: 9'
|
|
||||||
- line: '| switchUdpReceiveBufferSize: 42'
|
|
||||||
- line: '| switchSocketBufferEfficiency: 4'
|
|
||||||
- line: '| switchSocketInitializeEnabled: 1'
|
|
||||||
- line: '| switchNetworkInterfaceManagerInitializeEnabled: 1'
|
|
||||||
- line: '| switchDisableHTCSPlayerConnection: 0'
|
|
||||||
- line: '| switchUseNewStyleFilepaths: 0'
|
|
||||||
- line: '| switchUseLegacyFmodPriorities: 0'
|
|
||||||
- line: '| switchUseMicroSleepForYield: 1'
|
|
||||||
- line: '| switchEnableRamDiskSupport: 0'
|
|
||||||
- line: '| switchMicroSleepForYieldTime: 25'
|
|
||||||
- line: '| switchRamDiskSpaceSize: 12'
|
|
||||||
- line: '| switchUpgradedPlayerSettingsToNMETA: 0'
|
|
||||||
- line: '| ps4NPAgeRating: 12'
|
|
||||||
- line: '| ps4NPTitleSecret: '
|
|
||||||
- line: '| ps4NPTrophyPackPath: '
|
|
||||||
- line: '| ps4ParentalLevel: 11'
|
|
||||||
- line: '| ps4ContentID: ED1633-NPXX51362_00-0000000000000000'
|
|
||||||
- line: '| ps4Category: 0'
|
|
||||||
- line: '| ps4MasterVersion: 01.00'
|
|
||||||
- line: '| ps4AppVersion: 01.00'
|
|
||||||
- line: '| ps4AppType: 0'
|
|
||||||
- line: '| ps4ParamSfxPath: '
|
|
||||||
- line: '| ps4VideoOutPixelFormat: 0'
|
|
||||||
- line: '| ps4VideoOutInitialWidth: 1920'
|
|
||||||
- line: '| ps4VideoOutBaseModeInitialWidth: 1920'
|
|
||||||
- line: '| ps4VideoOutReprojectionRate: 60'
|
|
||||||
- line: '| ps4PronunciationXMLPath: '
|
|
||||||
- line: '| ps4PronunciationSIGPath: '
|
|
||||||
- line: '| ps4BackgroundImagePath: '
|
|
||||||
- line: '| ps4StartupImagePath: '
|
|
||||||
- line: '| ps4StartupImagesFolder: '
|
|
||||||
- line: '| ps4IconImagesFolder: '
|
|
||||||
- line: '| ps4SaveDataImagePath: '
|
|
||||||
- line: '| ps4SdkOverride: '
|
|
||||||
- line: '| ps4BGMPath: '
|
|
||||||
- line: '| ps4ShareFilePath: '
|
|
||||||
- line: '| ps4ShareOverlayImagePath: '
|
|
||||||
- line: '| ps4PrivacyGuardImagePath: '
|
|
||||||
- line: '| ps4ExtraSceSysFile: '
|
|
||||||
- line: '| ps4NPtitleDatPath: '
|
|
||||||
- line: '| ps4RemotePlayKeyAssignment: -1'
|
|
||||||
- line: '| ps4RemotePlayKeyMappingDir: '
|
|
||||||
- line: '| ps4PlayTogetherPlayerCount: 0'
|
|
||||||
- line: '| ps4EnterButtonAssignment: 2'
|
|
||||||
- line: '| ps4ApplicationParam1: 0'
|
|
||||||
- line: '| ps4ApplicationParam2: 0'
|
|
||||||
- line: '| ps4ApplicationParam3: 0'
|
|
||||||
- line: '| ps4ApplicationParam4: 0'
|
|
||||||
- line: '| ps4DownloadDataSize: 0'
|
|
||||||
- line: '| ps4GarlicHeapSize: 2048'
|
|
||||||
- line: '| ps4ProGarlicHeapSize: 2560'
|
|
||||||
- line: '| playerPrefsMaxSize: 32768'
|
|
||||||
- line: '| ps4Passcode: NwJcpdhxV3VhtobFDKvjHICS9m8D35cy'
|
|
||||||
- line: '| ps4pnSessions: 1'
|
|
||||||
- line: '| ps4pnPresence: 1'
|
|
||||||
- line: '| ps4pnFriends: 1'
|
|
||||||
- line: '| ps4pnGameCustomData: 1'
|
|
||||||
- line: '| playerPrefsSupport: 0'
|
|
||||||
- line: '| enableApplicationExit: 0'
|
|
||||||
- line: '| resetTempFolder: 1'
|
|
||||||
- line: '| restrictedAudioUsageRights: 0'
|
|
||||||
- line: '| ps4UseResolutionFallback: 0'
|
|
||||||
- line: '| ps4ReprojectionSupport: 0'
|
|
||||||
- line: '| ps4UseAudio3dBackend: 0'
|
|
||||||
- line: '| ps4UseLowGarlicFragmentationMode: 1'
|
|
||||||
- line: '| ps4SocialScreenEnabled: 0'
|
|
||||||
- line: '| ps4ScriptOptimizationLevel: 2'
|
|
||||||
- line: '| ps4Audio3dVirtualSpeakerCount: 14'
|
|
||||||
- line: '| ps4attribCpuUsage: 0'
|
|
||||||
- line: '| ps4PatchPkgPath: '
|
|
||||||
- line: '| ps4PatchLatestPkgPath: '
|
|
||||||
- line: '| ps4PatchChangeinfoPath: '
|
|
||||||
- line: '| ps4PatchDayOne: 0'
|
|
||||||
- line: '| ps4attribUserManagement: 0'
|
|
||||||
- line: '| ps4attribMoveSupport: 0'
|
|
||||||
- line: '| ps4attrib3DSupport: 0'
|
|
||||||
- line: '| ps4attribShareSupport: 0'
|
|
||||||
- line: '| ps4attribExclusiveVR: 0'
|
|
||||||
- line: '| ps4disableAutoHideSplash: 0'
|
|
||||||
- line: '| ps4videoRecordingFeaturesUsed: 0'
|
|
||||||
- line: '| ps4contentSearchFeaturesUsed: 0'
|
|
||||||
- line: '| ps4CompatibilityPS5: 0'
|
|
||||||
- line: '| ps4AllowPS5Detection: 0'
|
|
||||||
- line: '| ps4GPU800MHz: 1'
|
|
||||||
- line: '| ps4attribEyeToEyeDistanceSettingVR: 0'
|
|
||||||
- line: '| ps4IncludedModules: []'
|
|
||||||
- line: '| ps4attribVROutputEnabled: 0'
|
|
||||||
- line: '| monoEnv: '
|
|
||||||
- line: '| splashScreenBackgroundSourceLandscape: {instanceID: 0}'
|
|
||||||
- line: '| splashScreenBackgroundSourcePortrait: {instanceID: 0}'
|
|
||||||
- line: '| blurSplashScreenBackground: 1'
|
|
||||||
- line: '| spritePackerPolicy: '
|
|
||||||
- line: '| webGLMemorySize: 32'
|
|
||||||
- line: '| webGLExceptionSupport: 1'
|
|
||||||
- line: '| webGLNameFilesAsHashes: 0'
|
|
||||||
- line: '| webGLShowDiagnostics: 0'
|
|
||||||
- line: '| webGLDataCaching: 1'
|
|
||||||
- line: '| webGLDebugSymbols: 0'
|
|
||||||
- line: '| webGLEmscriptenArgs: '
|
|
||||||
- line: '| webGLModulesDirectory: '
|
|
||||||
- line: '| webGLTemplate: APPLICATION:Default'
|
|
||||||
- line: '| webGLAnalyzeBuildSize: 0'
|
|
||||||
- line: '| webGLUseEmbeddedResources: 0'
|
|
||||||
- line: '| webGLCompressionFormat: 0'
|
|
||||||
- line: '| webGLWasmArithmeticExceptions: 0'
|
|
||||||
- line: '| webGLLinkerTarget: 1'
|
|
||||||
- line: '| webGLThreadsSupport: 0'
|
|
||||||
- line: '| webGLDecompressionFallback: 0'
|
|
||||||
- line: '| webGLInitialMemorySize: 32'
|
|
||||||
- line: '| webGLMaximumMemorySize: 2048'
|
|
||||||
- line: '| webGLMemoryGrowthMode: 2'
|
|
||||||
- line: '| webGLMemoryLinearGrowthStep: 16'
|
|
||||||
- line: '| webGLMemoryGeometricGrowthStep: 0.2'
|
|
||||||
- line: '| webGLMemoryGeometricGrowthCap: 96'
|
|
||||||
- line: '| webGLPowerPreference: 2'
|
|
||||||
- line: '| webGLWebAssemblyTable: 0'
|
|
||||||
- line: '| webGLWebAssemblyBigInt: 0'
|
|
||||||
- line: '| webGLCloseOnQuit: 0'
|
|
||||||
- line: '| webWasm2023: 0'
|
|
||||||
- line: '| webEnableSubmoduleStrippingCompatibility: 0'
|
|
||||||
- line: '| scriptingDefineSymbols:'
|
|
||||||
- line: '| Android: DOTWEEN'
|
|
||||||
- line: '| EmbeddedLinux: DOTWEEN'
|
|
||||||
- line: '| GameCoreScarlett: DOTWEEN'
|
|
||||||
- line: '| GameCoreXboxOne: DOTWEEN'
|
|
||||||
- line: '| Kepler: DOTWEEN'
|
|
||||||
- line: '| LinuxHeadlessSimulation: DOTWEEN'
|
|
||||||
- line: '| Nintendo Switch: DOTWEEN'
|
|
||||||
- line: '| PS4: DOTWEEN'
|
|
||||||
- line: '| PS5: DOTWEEN'
|
|
||||||
- line: '| QNX: DOTWEEN'
|
|
||||||
- line: '| ReservedCFE: DOTWEEN'
|
|
||||||
- line: '| Standalone: DOTWEEN'
|
|
||||||
- line: '| VisionOS: DOTWEEN'
|
|
||||||
- line: '| WebGL: DOTWEEN'
|
|
||||||
- line: '| Windows Store Apps: DOTWEEN'
|
|
||||||
- line: '| XboxOne: DOTWEEN'
|
|
||||||
- line: '| iPhone: DOTWEEN'
|
|
||||||
- line: '| tvOS: DOTWEEN'
|
|
||||||
- line: '| additionalCompilerArguments: {}'
|
|
||||||
- line: '| platformArchitecture: {}'
|
|
||||||
- line: '| scriptingBackend:'
|
|
||||||
- line: '| Android: 1'
|
|
||||||
- line: '| il2cppCompilerConfiguration: {}'
|
|
||||||
- line: '| il2cppCodeGeneration: {}'
|
|
||||||
- line: '| il2cppStacktraceInformation: {}'
|
|
||||||
- line: '| managedStrippingLevel: {}'
|
|
||||||
- line: '| incrementalIl2cppBuild: {}'
|
|
||||||
- line: '| suppressCommonWarnings: 1'
|
|
||||||
- line: '| allowUnsafeCode: 0'
|
|
||||||
- line: '| useDeterministicCompilation: 1'
|
|
||||||
- line: '| additionalIl2CppArgs: '
|
|
||||||
- line: '| scriptingRuntimeVersion: 1'
|
|
||||||
- line: '| gcIncremental: 1'
|
|
||||||
- line: '| gcWBarrierValidation: 0'
|
|
||||||
- line: '| apiCompatibilityLevelPerPlatform: {}'
|
|
||||||
- line: '| editorAssembliesCompatibilityLevel: 2'
|
|
||||||
- line: '| m_RenderingPath: 1'
|
|
||||||
- line: '| m_MobileRenderingPath: 1'
|
|
||||||
- line: '| metroPackageName: ScreenCapture'
|
|
||||||
- line: '| metroPackageVersion: '
|
|
||||||
- line: '| metroCertificatePath: '
|
|
||||||
- line: '| metroCertificatePassword: '
|
|
||||||
- line: '| metroCertificateSubject: '
|
|
||||||
- line: '| metroCertificateIssuer: '
|
|
||||||
- line: '| metroCertificateNotAfter: 0000000000000000'
|
|
||||||
- line: '| metroApplicationDescription: ScreenCapture'
|
|
||||||
- line: '| wsaImages: {}'
|
|
||||||
- line: '| metroTileShortName: '
|
|
||||||
- line: '| metroTileShowName: 0'
|
|
||||||
- line: '| metroMediumTileShowName: 0'
|
|
||||||
- line: '| metroLargeTileShowName: 0'
|
|
||||||
- line: '| metroWideTileShowName: 0'
|
|
||||||
- line: '| metroSupportStreamingInstall: 0'
|
|
||||||
- line: '| metroLastRequiredScene: 0'
|
|
||||||
- line: '| metroDefaultTileSize: 1'
|
|
||||||
- line: '| metroTileForegroundText: 2'
|
|
||||||
- line: '| metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628,
|
|
||||||
a: 0}'
|
|
||||||
- line: '| metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902,
|
|
||||||
b: 0.21568628, a: 1}'
|
|
||||||
- line: '| metroSplashScreenUseBackgroundColor: 0'
|
|
||||||
- line: '| syncCapabilities: 0'
|
|
||||||
- line: '| platformCapabilities: {}'
|
|
||||||
- line: '| metroTargetDeviceFamilies: {}'
|
|
||||||
- line: '| metroFTAName: '
|
|
||||||
- line: '| metroFTAFileTypes: []'
|
|
||||||
- line: '| metroProtocolName: '
|
|
||||||
- line: '| vcxProjDefaultLanguage: '
|
|
||||||
- line: '| XboxOneProductId: '
|
|
||||||
- line: '| XboxOneUpdateKey: '
|
|
||||||
- line: '| XboxOneSandboxId: '
|
|
||||||
- line: '| XboxOneContentId: '
|
|
||||||
- line: '| XboxOneTitleId: '
|
|
||||||
- line: '| XboxOneSCId: '
|
|
||||||
- line: '| XboxOneGameOsOverridePath: '
|
|
||||||
- line: '| XboxOnePackagingOverridePath: '
|
|
||||||
- line: '| XboxOneAppManifestOverridePath: '
|
|
||||||
- line: '| XboxOneVersion: 1.0.0.0'
|
|
||||||
- line: '| XboxOnePackageEncryption: 0'
|
|
||||||
- line: '| XboxOnePackageUpdateGranularity: 2'
|
|
||||||
- line: '| XboxOneDescription: '
|
|
||||||
- line: '| XboxOneLanguage:'
|
|
||||||
- line: '| - enus'
|
|
||||||
- line: '| XboxOneCapability: []'
|
|
||||||
- line: '| XboxOneGameRating: {}'
|
|
||||||
- line: '| XboxOneIsContentPackage: 0'
|
|
||||||
- line: '| XboxOneEnhancedXboxCompatibilityMode: 0'
|
|
||||||
- line: '| XboxOneEnableGPUVariability: 1'
|
|
||||||
- line: '| XboxOneSockets: {}'
|
|
||||||
- line: '| XboxOneSplashScreen: {instanceID: 0}'
|
|
||||||
- line: '| XboxOneAllowedProductIds: []'
|
|
||||||
- line: '| XboxOnePersistentLocalStorageSize: 0'
|
|
||||||
- line: '| XboxOneXTitleMemory: 8'
|
|
||||||
- line: '| XboxOneOverrideIdentityName: '
|
|
||||||
- line: '| XboxOneOverrideIdentityPublisher: '
|
|
||||||
- line: '| vrEditorSettings: {}'
|
|
||||||
- line: '| cloudServicesEnabled: {}'
|
|
||||||
- line: '| luminIcon:'
|
|
||||||
- line: '| m_Name: '
|
|
||||||
- line: '| m_ModelFolderPath: '
|
|
||||||
- line: '| m_PortalFolderPath: '
|
|
||||||
- line: '| luminCert:'
|
|
||||||
- line: '| m_CertPath: '
|
|
||||||
- line: '| m_SignPackage: 1'
|
|
||||||
- line: '| luminIsChannelApp: 0'
|
|
||||||
- line: '| luminVersion:'
|
|
||||||
- line: '| m_VersionCode: 1'
|
|
||||||
- line: '| m_VersionName: '
|
|
||||||
- line: '| hmiPlayerDataPath: '
|
|
||||||
- line: '| hmiForceSRGBBlit: 1'
|
|
||||||
- line: '| embeddedLinuxEnableGamepadInput: 0'
|
|
||||||
- line: '| hmiCpuConfiguration: '
|
|
||||||
- line: '| hmiLogStartupTiming: 0'
|
|
||||||
- line: '| qnxGraphicConfPath: '
|
|
||||||
- line: '| apiCompatibilityLevel: 3'
|
|
||||||
- line: '| captureStartupLogs: {}'
|
|
||||||
- line: '| activeInputHandler: 1'
|
|
||||||
- line: '| windowsGamepadBackendHint: 0'
|
|
||||||
- line: '| cloudProjectId: '
|
|
||||||
- line: '| framebufferDepthMemorylessMode: 0'
|
|
||||||
- line: '| qualitySettingsNames: []'
|
|
||||||
- line: '| projectName: '
|
|
||||||
- line: '| organizationId: '
|
|
||||||
- line: '| cloudEnabled: 0'
|
|
||||||
- line: '| legacyClampBlendShapeWeights: 0'
|
|
||||||
- line: '| hmiLoadingImage: {instanceID: 0}'
|
|
||||||
- line: '| platformRequiresReadableAssets: 0'
|
|
||||||
- line: '| virtualTexturingSupportEnabled: 0'
|
|
||||||
- line: '| insecureHttpOption: 0'
|
|
||||||
- line: '| androidVulkanDenyFilterList: []'
|
|
||||||
- line: '| androidVulkanAllowFilterList: []'
|
|
||||||
- line: '| androidVulkanDeviceFilterListAsset: {instanceID: 0}'
|
|
||||||
- line: '| d3d12DeviceFilterListAsset: {instanceID: 0}'
|
|
||||||
- line: '| '
|
|
||||||
references:
|
|
||||||
version: 2
|
|
||||||
RefIds:
|
|
||||||
- rid: 1527313263111700547
|
|
||||||
type: {class: WindowsPlatformSettings, ns: UnityEditor.WindowsStandalone, asm: UnityEditor.WindowsStandalone.Extensions}
|
|
||||||
data:
|
|
||||||
m_Development: 0
|
|
||||||
m_ConnectProfiler: 0
|
|
||||||
m_BuildWithDeepProfilingSupport: 0
|
|
||||||
m_AllowDebugging: 0
|
|
||||||
m_WaitForManagedDebugger: 0
|
|
||||||
m_ManagedDebuggerFixedPort: 0
|
|
||||||
m_ExplicitNullChecks: 0
|
|
||||||
m_ExplicitDivideByZeroChecks: 0
|
|
||||||
m_ExplicitArrayBoundsChecks: 0
|
|
||||||
m_CompressionType: 0
|
|
||||||
m_InstallInBuildFolder: 0
|
|
||||||
m_InsightsSettingsContainer:
|
|
||||||
m_BuildProfileEngineDiagnosticsState: 2
|
|
||||||
m_WindowsBuildAndRunDeployTarget: 0
|
|
||||||
m_Architecture: 0
|
|
||||||
m_CreateSolution: 0
|
|
||||||
m_CopyPDBFiles: 0
|
|
||||||
m_WindowsDevicePortalAddress:
|
|
||||||
m_WindowsDevicePortalUsername:
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 209b595a9fd9c8e4bb59ef05a447092b
|
|
||||||
NativeFormatImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
mainObjectFileID: 11400000
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -53,7 +53,6 @@ MonoBehaviour:
|
|||||||
m_AdditionalLightsShadowResolutionTierHigh: 2048
|
m_AdditionalLightsShadowResolutionTierHigh: 2048
|
||||||
m_ReflectionProbeBlending: 0
|
m_ReflectionProbeBlending: 0
|
||||||
m_ReflectionProbeBoxProjection: 0
|
m_ReflectionProbeBoxProjection: 0
|
||||||
m_ReflectionProbeAtlas: 1
|
|
||||||
m_ShadowDistance: 50
|
m_ShadowDistance: 50
|
||||||
m_ShadowCascadeCount: 1
|
m_ShadowCascadeCount: 1
|
||||||
m_Cascade2Split: 0.25
|
m_Cascade2Split: 0.25
|
||||||
@@ -79,7 +78,6 @@ MonoBehaviour:
|
|||||||
m_UseAdaptivePerformance: 1
|
m_UseAdaptivePerformance: 1
|
||||||
m_ColorGradingMode: 0
|
m_ColorGradingMode: 0
|
||||||
m_ColorGradingLutSize: 32
|
m_ColorGradingLutSize: 32
|
||||||
m_AllowPostProcessAlphaOutput: 0
|
|
||||||
m_UseFastSRGBLinearConversion: 0
|
m_UseFastSRGBLinearConversion: 0
|
||||||
m_SupportDataDrivenLensFlare: 1
|
m_SupportDataDrivenLensFlare: 1
|
||||||
m_SupportScreenSpaceLensFlare: 1
|
m_SupportScreenSpaceLensFlare: 1
|
||||||
@@ -100,40 +98,35 @@ MonoBehaviour:
|
|||||||
obsoleteHasProbeVolumes:
|
obsoleteHasProbeVolumes:
|
||||||
m_Keys: []
|
m_Keys: []
|
||||||
m_Values:
|
m_Values:
|
||||||
m_PrefilteringModeMainLightShadows: 4
|
m_PrefilteringModeMainLightShadows: 1
|
||||||
m_PrefilteringModeAdditionalLight: 4
|
m_PrefilteringModeAdditionalLight: 4
|
||||||
m_PrefilteringModeAdditionalLightShadows: 0
|
m_PrefilteringModeAdditionalLightShadows: 1
|
||||||
m_PrefilterXRKeywords: 1
|
m_PrefilterXRKeywords: 0
|
||||||
m_PrefilteringModeForwardPlus: 0
|
m_PrefilteringModeForwardPlus: 1
|
||||||
m_PrefilteringModeDeferredRendering: 0
|
m_PrefilteringModeDeferredRendering: 1
|
||||||
m_PrefilteringModeScreenSpaceOcclusion: 0
|
m_PrefilteringModeScreenSpaceOcclusion: 1
|
||||||
m_PrefilterDebugKeywords: 1
|
m_PrefilterDebugKeywords: 0
|
||||||
m_PrefilterWriteRenderingLayers: 1
|
m_PrefilterWriteRenderingLayers: 0
|
||||||
m_PrefilterHDROutput: 1
|
m_PrefilterHDROutput: 0
|
||||||
m_PrefilterAlphaOutput: 1
|
m_PrefilterSSAODepthNormals: 0
|
||||||
m_PrefilterSSAODepthNormals: 1
|
m_PrefilterSSAOSourceDepthLow: 0
|
||||||
m_PrefilterSSAOSourceDepthLow: 1
|
m_PrefilterSSAOSourceDepthMedium: 0
|
||||||
m_PrefilterSSAOSourceDepthMedium: 1
|
m_PrefilterSSAOSourceDepthHigh: 0
|
||||||
m_PrefilterSSAOSourceDepthHigh: 1
|
m_PrefilterSSAOInterleaved: 0
|
||||||
m_PrefilterSSAOInterleaved: 1
|
m_PrefilterSSAOBlueNoise: 0
|
||||||
m_PrefilterSSAOBlueNoise: 1
|
m_PrefilterSSAOSampleCountLow: 0
|
||||||
m_PrefilterSSAOSampleCountLow: 1
|
m_PrefilterSSAOSampleCountMedium: 0
|
||||||
m_PrefilterSSAOSampleCountMedium: 1
|
m_PrefilterSSAOSampleCountHigh: 0
|
||||||
m_PrefilterSSAOSampleCountHigh: 1
|
m_PrefilterDBufferMRT1: 0
|
||||||
m_PrefilterDBufferMRT1: 1
|
m_PrefilterDBufferMRT2: 0
|
||||||
m_PrefilterDBufferMRT2: 1
|
m_PrefilterDBufferMRT3: 0
|
||||||
m_PrefilterDBufferMRT3: 1
|
m_PrefilterSoftShadowsQualityLow: 0
|
||||||
m_PrefilterSoftShadowsQualityLow: 1
|
m_PrefilterSoftShadowsQualityMedium: 0
|
||||||
m_PrefilterSoftShadowsQualityMedium: 1
|
m_PrefilterSoftShadowsQualityHigh: 0
|
||||||
m_PrefilterSoftShadowsQualityHigh: 1
|
|
||||||
m_PrefilterSoftShadows: 0
|
m_PrefilterSoftShadows: 0
|
||||||
m_PrefilterScreenCoord: 1
|
m_PrefilterScreenCoord: 0
|
||||||
m_PrefilterNativeRenderPass: 1
|
m_PrefilterNativeRenderPass: 0
|
||||||
m_PrefilterUseLegacyLightmaps: 0
|
m_PrefilterUseLegacyLightmaps: 0
|
||||||
m_PrefilterBicubicLightmapSampling: 1
|
|
||||||
m_PrefilterReflectionProbeBlending: 1
|
|
||||||
m_PrefilterReflectionProbeBoxProjection: 1
|
|
||||||
m_PrefilterReflectionProbeAtlas: 1
|
|
||||||
m_ShaderVariantLogLevel: 0
|
m_ShaderVariantLogLevel: 0
|
||||||
m_ShadowCascades: 0
|
m_ShadowCascades: 0
|
||||||
m_Textures:
|
m_Textures:
|
||||||
|
|||||||
@@ -63,19 +63,7 @@ MonoBehaviour:
|
|||||||
- rid: 6152885261028556803
|
- rid: 6152885261028556803
|
||||||
- rid: 7432930701277134848
|
- rid: 7432930701277134848
|
||||||
m_RuntimeSettings:
|
m_RuntimeSettings:
|
||||||
m_List:
|
m_List: []
|
||||||
- rid: 7752762179098771456
|
|
||||||
- rid: 7752762179098771457
|
|
||||||
- rid: 7752762179098771459
|
|
||||||
- rid: 7752762179098771461
|
|
||||||
- rid: 7752762179098771462
|
|
||||||
- rid: 7752762179098771464
|
|
||||||
- rid: 7752762179098771466
|
|
||||||
- rid: 7752762179098771468
|
|
||||||
- rid: 7752762179098771472
|
|
||||||
- rid: 7752762179098771476
|
|
||||||
- rid: 3114554777721110529
|
|
||||||
- rid: 3114554777721110530
|
|
||||||
m_AssetVersion: 8
|
m_AssetVersion: 8
|
||||||
m_ObsoleteDefaultVolumeProfile: {fileID: 0}
|
m_ObsoleteDefaultVolumeProfile: {fileID: 0}
|
||||||
m_RenderingLayerNames:
|
m_RenderingLayerNames:
|
||||||
|
|||||||
@@ -658,10 +658,10 @@
|
|||||||
"m_Expanded": true,
|
"m_Expanded": true,
|
||||||
"m_Position": {
|
"m_Position": {
|
||||||
"serializedVersion": "2",
|
"serializedVersion": "2",
|
||||||
"x": -1648.0001220703125,
|
"x": -1654.5001220703125,
|
||||||
"y": 105.00000762939453,
|
"y": 171.49996948242188,
|
||||||
"width": 110.0,
|
"width": 110.0,
|
||||||
"height": 33.999977111816409
|
"height": 34.00004577636719
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"m_Slots": [
|
"m_Slots": [
|
||||||
@@ -834,9 +834,9 @@
|
|||||||
"m_Expanded": true,
|
"m_Expanded": true,
|
||||||
"m_Position": {
|
"m_Position": {
|
||||||
"serializedVersion": "2",
|
"serializedVersion": "2",
|
||||||
"x": -1501.0001220703125,
|
"x": -1507.0001220703125,
|
||||||
"y": -127.00001525878906,
|
"y": -60.00000762939453,
|
||||||
"width": 124.0,
|
"width": 123.5,
|
||||||
"height": 173.00001525878907
|
"height": 173.00001525878907
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -1284,9 +1284,9 @@
|
|||||||
"m_Expanded": true,
|
"m_Expanded": true,
|
||||||
"m_Position": {
|
"m_Position": {
|
||||||
"serializedVersion": "2",
|
"serializedVersion": "2",
|
||||||
"x": -1501.0001220703125,
|
"x": -1507.0001220703125,
|
||||||
"y": 65.00001525878906,
|
"y": 132.00001525878907,
|
||||||
"width": 119.0,
|
"width": 118.5,
|
||||||
"height": 148.9999542236328
|
"height": 148.9999542236328
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 1.5 MiB |
@@ -1,143 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 5417d9d7d462af345919661548536f46
|
|
||||||
TextureImporter:
|
|
||||||
internalIDToNameTable:
|
|
||||||
- first:
|
|
||||||
213: -7767773165118985166
|
|
||||||
second: Gemini_Generated_Image_u4e5d8u4e5d8u4e5_0
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 13
|
|
||||||
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: 0
|
|
||||||
alignment: 0
|
|
||||||
spritePivot: {x: 0.5, y: 0.5}
|
|
||||||
spritePixelsToUnits: 100
|
|
||||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
|
||||||
spriteGenerateFallbackPhysicsShape: 0
|
|
||||||
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: 0
|
|
||||||
platformSettings:
|
|
||||||
- serializedVersion: 4
|
|
||||||
buildTarget: DefaultTexturePlatform
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 0
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
ignorePlatformSupport: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 4
|
|
||||||
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
|
|
||||||
spriteSheet:
|
|
||||||
serializedVersion: 2
|
|
||||||
sprites:
|
|
||||||
- serializedVersion: 2
|
|
||||||
name: Gemini_Generated_Image_u4e5d8u4e5d8u4e5_0
|
|
||||||
rect:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 1024
|
|
||||||
height: 1024
|
|
||||||
alignment: 0
|
|
||||||
pivot: {x: 0, y: 0}
|
|
||||||
border: {x: 0, y: 0, z: 0, w: 0}
|
|
||||||
customData:
|
|
||||||
outline: []
|
|
||||||
physicsShape: []
|
|
||||||
tessellationDetail: -1
|
|
||||||
bones: []
|
|
||||||
spriteID: 23c65453673533490800000000000000
|
|
||||||
internalID: -7767773165118985166
|
|
||||||
vertices: []
|
|
||||||
indices:
|
|
||||||
edges: []
|
|
||||||
weights: []
|
|
||||||
outline: []
|
|
||||||
customData:
|
|
||||||
physicsShape: []
|
|
||||||
bones: []
|
|
||||||
spriteID: 5e97eb03825dee720800000000000000
|
|
||||||
internalID: 0
|
|
||||||
vertices: []
|
|
||||||
indices:
|
|
||||||
edges: []
|
|
||||||
weights: []
|
|
||||||
secondaryTextures: []
|
|
||||||
spriteCustomMetadata:
|
|
||||||
entries: []
|
|
||||||
nameFileIdTable:
|
|
||||||
Gemini_Generated_Image_u4e5d8u4e5d8u4e5_0: -7767773165118985166
|
|
||||||
mipmapLimitGroupName:
|
|
||||||
pSDRemoveMatte: 0
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -6,8 +6,8 @@ EditorBuildSettings:
|
|||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_Scenes:
|
m_Scenes:
|
||||||
- enabled: 1
|
- enabled: 1
|
||||||
path: Assets/Main.unity
|
path: Assets/Scenes/SampleScene.unity
|
||||||
guid: 0e7a0d8a2017542db96f24c7a5928929
|
guid: 8c9cfa26abfee488c85f1582747f6a02
|
||||||
m_configObjects:
|
m_configObjects:
|
||||||
com.unity.input.settings.actions: {fileID: -944628639613478452, guid: 2bcd2660ca9b64942af0de543d8d7100, type: 3}
|
com.unity.input.settings.actions: {fileID: -944628639613478452, guid: 2bcd2660ca9b64942af0de543d8d7100, type: 3}
|
||||||
m_UseUCBPForAssetBundles: 0
|
m_UseUCBPForAssetBundles: 0
|
||||||
|
|||||||
@@ -12,16 +12,16 @@ PlayerSettings:
|
|||||||
targetDevice: 2
|
targetDevice: 2
|
||||||
useOnDemandResources: 0
|
useOnDemandResources: 0
|
||||||
accelerometerFrequency: 60
|
accelerometerFrequency: 60
|
||||||
companyName: Cooney Studio
|
companyName: DefaultCompany
|
||||||
productName: Screen Capture
|
productName: ScreenCapture
|
||||||
defaultCursor: {fileID: 0}
|
defaultCursor: {fileID: 0}
|
||||||
cursorHotspot: {x: 0, y: 0}
|
cursorHotspot: {x: 0, y: 0}
|
||||||
m_SplashScreenBackgroundColor: {r: 0.8, g: 0.8, b: 0.8, a: 1}
|
m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1}
|
||||||
m_ShowUnitySplashScreen: 1
|
m_ShowUnitySplashScreen: 1
|
||||||
m_ShowUnitySplashLogo: 1
|
m_ShowUnitySplashLogo: 1
|
||||||
m_SplashScreenOverlayOpacity: 1
|
m_SplashScreenOverlayOpacity: 1
|
||||||
m_SplashScreenAnimation: 1
|
m_SplashScreenAnimation: 1
|
||||||
m_SplashScreenLogoStyle: 0
|
m_SplashScreenLogoStyle: 1
|
||||||
m_SplashScreenDrawMode: 0
|
m_SplashScreenDrawMode: 0
|
||||||
m_SplashScreenBackgroundAnimationZoom: 1
|
m_SplashScreenBackgroundAnimationZoom: 1
|
||||||
m_SplashScreenLogoAnimationZoom: 1
|
m_SplashScreenLogoAnimationZoom: 1
|
||||||
@@ -42,8 +42,8 @@ PlayerSettings:
|
|||||||
m_SplashScreenLogos: []
|
m_SplashScreenLogos: []
|
||||||
m_VirtualRealitySplashScreen: {fileID: 0}
|
m_VirtualRealitySplashScreen: {fileID: 0}
|
||||||
m_HolographicTrackingLossScreen: {fileID: 0}
|
m_HolographicTrackingLossScreen: {fileID: 0}
|
||||||
defaultScreenWidth: 480
|
defaultScreenWidth: 1920
|
||||||
defaultScreenHeight: 320
|
defaultScreenHeight: 1080
|
||||||
defaultScreenWidthWeb: 960
|
defaultScreenWidthWeb: 960
|
||||||
defaultScreenHeightWeb: 600
|
defaultScreenHeightWeb: 600
|
||||||
m_StereoRenderingPath: 0
|
m_StereoRenderingPath: 0
|
||||||
@@ -83,7 +83,7 @@ PlayerSettings:
|
|||||||
androidApplicationEntry: 2
|
androidApplicationEntry: 2
|
||||||
defaultIsNativeResolution: 1
|
defaultIsNativeResolution: 1
|
||||||
macRetinaSupport: 1
|
macRetinaSupport: 1
|
||||||
runInBackground: 1
|
runInBackground: 0
|
||||||
muteOtherAudioSources: 0
|
muteOtherAudioSources: 0
|
||||||
Prepare IOS For Recording: 0
|
Prepare IOS For Recording: 0
|
||||||
Force IOS Speakers When Recording: 0
|
Force IOS Speakers When Recording: 0
|
||||||
@@ -91,7 +91,7 @@ PlayerSettings:
|
|||||||
deferSystemGesturesMode: 0
|
deferSystemGesturesMode: 0
|
||||||
hideHomeButton: 0
|
hideHomeButton: 0
|
||||||
submitAnalytics: 1
|
submitAnalytics: 1
|
||||||
usePlayerLog: 0
|
usePlayerLog: 1
|
||||||
dedicatedServerOptimizations: 1
|
dedicatedServerOptimizations: 1
|
||||||
bakeCollisionMeshes: 0
|
bakeCollisionMeshes: 0
|
||||||
forceSingleInstance: 0
|
forceSingleInstance: 0
|
||||||
@@ -107,8 +107,8 @@ PlayerSettings:
|
|||||||
xboxEnableKinectAutoTracking: 0
|
xboxEnableKinectAutoTracking: 0
|
||||||
xboxEnableFitness: 0
|
xboxEnableFitness: 0
|
||||||
visibleInBackground: 1
|
visibleInBackground: 1
|
||||||
allowFullscreenSwitch: 0
|
allowFullscreenSwitch: 1
|
||||||
fullscreenMode: 3
|
fullscreenMode: 1
|
||||||
xboxSpeechDB: 0
|
xboxSpeechDB: 0
|
||||||
xboxEnableHeadOrientation: 0
|
xboxEnableHeadOrientation: 0
|
||||||
xboxEnableGuest: 0
|
xboxEnableGuest: 0
|
||||||
@@ -294,10 +294,7 @@ PlayerSettings:
|
|||||||
androidSymbolsSizeThreshold: 800
|
androidSymbolsSizeThreshold: 800
|
||||||
m_BuildTargetIcons: []
|
m_BuildTargetIcons: []
|
||||||
m_BuildTargetPlatformIcons: []
|
m_BuildTargetPlatformIcons: []
|
||||||
m_BuildTargetBatching:
|
m_BuildTargetBatching: []
|
||||||
- m_BuildTarget: Standalone
|
|
||||||
m_StaticBatching: 1
|
|
||||||
m_DynamicBatching: 0
|
|
||||||
m_BuildTargetShaderSettings: []
|
m_BuildTargetShaderSettings: []
|
||||||
m_BuildTargetGraphicsJobs: []
|
m_BuildTargetGraphicsJobs: []
|
||||||
m_BuildTargetGraphicsJobMode: []
|
m_BuildTargetGraphicsJobMode: []
|
||||||
|
|||||||
Reference in New Issue
Block a user