mirror of
https://github.com/RHeavenStudioPlus/HeavenStudioPlus.git
synced 2024-11-10 03:35:10 +00:00
General editor improvements (#257)
* Spaceball cleanup and small bug fix * Replace old hit sound in spaceball * Camera filters * added 9 new filters, including 3 types of sepia * oops * remark * normalization of fade out and fade in on filters are by 100 * GenerateFilterTypeEnum comments * Pure black and white filter * Zooming * Constant playback bar offset * Prepare box selector rewrite * Update icons, finalize
This commit is contained in:
parent
3fb6258813
commit
c7d829c033
50 changed files with 4127 additions and 1453 deletions
File diff suppressed because one or more lines are too long
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,31 @@ TextureImporter:
|
||||||
maxTextureSize: 2048
|
maxTextureSize: 2048
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Standalone
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,31 @@ TextureImporter:
|
||||||
maxTextureSize: 2048
|
maxTextureSize: 2048
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Standalone
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -99,6 +99,18 @@ TextureImporter:
|
||||||
overridden: 0
|
overridden: 0
|
||||||
androidETC2FallbackOverride: 0
|
androidETC2FallbackOverride: 0
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
spriteSheet:
|
spriteSheet:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
sprites: []
|
sprites: []
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
|
@ -68,7 +68,7 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
@ -80,7 +80,19 @@ TextureImporter:
|
||||||
maxTextureSize: 64
|
maxTextureSize: 64
|
||||||
resizeAlgorithm: 0
|
resizeAlgorithm: 0
|
||||||
textureFormat: -1
|
textureFormat: -1
|
||||||
textureCompression: 1
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
crunchedCompression: 0
|
crunchedCompression: 0
|
||||||
allowsAlphaSplitting: 0
|
allowsAlphaSplitting: 0
|
||||||
|
|
BIN
Assets/Resources/Sprites/Editor/UI/waveform.png
Normal file
BIN
Assets/Resources/Sprites/Editor/UI/waveform.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.1 KiB |
96
Assets/Resources/Sprites/Editor/UI/waveform.png.meta
Normal file
96
Assets/Resources/Sprites/Editor/UI/waveform.png.meta
Normal file
|
@ -0,0 +1,96 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 027d0a4d1b2bb2d4fa529145afb6e506
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 11
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 0
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapsPreserveCoverage: 0
|
||||||
|
alphaTestReferenceValue: 0.5
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
isReadable: 0
|
||||||
|
streamingMipmaps: 0
|
||||||
|
streamingMipmapsPriority: 0
|
||||||
|
vTOnly: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 0
|
||||||
|
seamlessCubemap: 0
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
serializedVersion: 2
|
||||||
|
filterMode: 1
|
||||||
|
aniso: 1
|
||||||
|
mipBias: 0
|
||||||
|
wrapU: 1
|
||||||
|
wrapV: 1
|
||||||
|
wrapW: 1
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
platformSettings:
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spritePackingTag:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
pSDShowRemoveMatteOption: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
BIN
Assets/Resources/Sprites/Editor/UI/zoom-in.png
Normal file
BIN
Assets/Resources/Sprites/Editor/UI/zoom-in.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 945 B |
120
Assets/Resources/Sprites/Editor/UI/zoom-in.png.meta
Normal file
120
Assets/Resources/Sprites/Editor/UI/zoom-in.png.meta
Normal file
|
@ -0,0 +1,120 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5562630d3cb1e1b439e6f0d06c45b14a
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 11
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 0
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapsPreserveCoverage: 0
|
||||||
|
alphaTestReferenceValue: 0.5
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
isReadable: 0
|
||||||
|
streamingMipmaps: 0
|
||||||
|
streamingMipmapsPriority: 0
|
||||||
|
vTOnly: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 0
|
||||||
|
seamlessCubemap: 0
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
serializedVersion: 2
|
||||||
|
filterMode: 1
|
||||||
|
aniso: 1
|
||||||
|
mipBias: 0
|
||||||
|
wrapU: 1
|
||||||
|
wrapV: 1
|
||||||
|
wrapW: 1
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
platformSettings:
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Standalone
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spritePackingTag:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
pSDShowRemoveMatteOption: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
BIN
Assets/Resources/Sprites/Editor/UI/zoom-out.png
Normal file
BIN
Assets/Resources/Sprites/Editor/UI/zoom-out.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 929 B |
120
Assets/Resources/Sprites/Editor/UI/zoom-out.png.meta
Normal file
120
Assets/Resources/Sprites/Editor/UI/zoom-out.png.meta
Normal file
|
@ -0,0 +1,120 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6f76ee0157ff5854295d8d0b12b5f165
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 11
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 0
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapsPreserveCoverage: 0
|
||||||
|
alphaTestReferenceValue: 0.5
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
isReadable: 0
|
||||||
|
streamingMipmaps: 0
|
||||||
|
streamingMipmapsPriority: 0
|
||||||
|
vTOnly: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 0
|
||||||
|
seamlessCubemap: 0
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
serializedVersion: 2
|
||||||
|
filterMode: 1
|
||||||
|
aniso: 1
|
||||||
|
mipBias: 0
|
||||||
|
wrapU: 1
|
||||||
|
wrapV: 1
|
||||||
|
wrapW: 1
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
platformSettings:
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Standalone
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spritePackingTag:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
pSDShowRemoveMatteOption: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
BIN
Assets/Resources/Sprites/Editor/UI/zoom-reset.png
Normal file
BIN
Assets/Resources/Sprites/Editor/UI/zoom-reset.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 963 B |
120
Assets/Resources/Sprites/Editor/UI/zoom-reset.png.meta
Normal file
120
Assets/Resources/Sprites/Editor/UI/zoom-reset.png.meta
Normal file
|
@ -0,0 +1,120 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c158bbf3be7618c468e696e8c2c54e95
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 11
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 0
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapsPreserveCoverage: 0
|
||||||
|
alphaTestReferenceValue: 0.5
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
isReadable: 0
|
||||||
|
streamingMipmaps: 0
|
||||||
|
streamingMipmapsPriority: 0
|
||||||
|
vTOnly: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 0
|
||||||
|
seamlessCubemap: 0
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
serializedVersion: 2
|
||||||
|
filterMode: 1
|
||||||
|
aniso: 1
|
||||||
|
mipBias: 0
|
||||||
|
wrapU: 1
|
||||||
|
wrapV: 1
|
||||||
|
wrapW: 1
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
platformSettings:
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Standalone
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 64
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 2
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spritePackingTag:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
pSDShowRemoveMatteOption: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -82,8 +82,8 @@ Material:
|
||||||
m_Colors:
|
m_Colors:
|
||||||
- _AddColor: {r: 0, g: 0, b: 0, a: 0}
|
- _AddColor: {r: 0, g: 0, b: 0, a: 0}
|
||||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
- _ColorAlpha: {r: 1, g: 1, b: 1, a: 1}
|
- _ColorAlpha: {r: 0.40007478, g: 0.343046, b: 0.3192805, a: 1}
|
||||||
- _ColorBravo: {r: 1, g: 0, b: 0, a: 1}
|
- _ColorBravo: {r: 1, g: 0, b: 0, a: 1}
|
||||||
- _ColorDelta: {r: 1, g: 1, b: 1, a: 1}
|
- _ColorDelta: {r: 0.68267095, g: 0.61040676, b: 0.57526755, a: 1}
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
m_BuildTextureStacks: []
|
m_BuildTextureStacks: []
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
|
<<<<<<< Updated upstream
|
||||||
guid: b4bfa7dc5fcd4384ca1832707d54bbf8
|
guid: b4bfa7dc5fcd4384ca1832707d54bbf8
|
||||||
|
=======
|
||||||
|
<<<<<<<< HEAD:Assets/Resources/Filters.meta
|
||||||
|
guid: deb444b6a583de84bab2142813a9f018
|
||||||
|
>>>>>>> Stashed changes
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
========
|
========
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,10 +1,8 @@
|
||||||
using System;
|
using System;
|
||||||
|
|
||||||
public static class AppInfo {
|
public static class AppInfo {
|
||||||
//--- AutoGenerated.begin
|
|
||||||
public const string Version = "0.0.966";
|
public const string Version = "0.0.966";
|
||||||
public static readonly DateTime Date = new DateTime(2023, 01, 30, 23, 47, 35, 816, DateTimeKind.Utc);
|
public static readonly DateTime Date = new DateTime(2023, 02, 04, 20, 32, 48, 156, DateTimeKind.Utc);
|
||||||
//--- AutoGenerated.end
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,46 +1,103 @@
|
||||||
using System.Collections;
|
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Globalization;
|
||||||
|
using Starpelly;
|
||||||
|
using TMPro;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.UI;
|
using UnityEngine.UI;
|
||||||
|
|
||||||
using TMPro;
|
namespace HeavenStudio.Editor.Track
|
||||||
|
|
||||||
namespace HeavenStudio.Editor
|
|
||||||
{
|
{
|
||||||
public class BeatGrid : MonoBehaviour
|
public class BeatGrid : MonoBehaviour
|
||||||
{
|
{
|
||||||
private RectTransform rectTransform;
|
#region Public
|
||||||
|
|
||||||
public float snap;
|
public float snap;
|
||||||
public float count;
|
public float count;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Private
|
||||||
|
|
||||||
|
private RectTransform rectTransform;
|
||||||
|
|
||||||
private float lastPosX;
|
private float lastPosX;
|
||||||
|
private float lastContentScale;
|
||||||
|
private float lastTimelineSize;
|
||||||
|
|
||||||
|
private float contentPosX => Mathf.Abs(scrollRect.content.localPosition.x / scrollRect.content.localScale.x);
|
||||||
|
private float secPerBeat => 60.0f / GameManager.instance.Beatmap.bpm;
|
||||||
|
|
||||||
private List<GameObject> Lines = new List<GameObject>();
|
private List<GameObject> Lines = new List<GameObject>();
|
||||||
|
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Exposed
|
||||||
|
|
||||||
|
[Header("Components")]
|
||||||
|
[SerializeField] private ScrollRect scrollRect;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region MonoBehaviour
|
||||||
|
|
||||||
private void Start()
|
private void Start()
|
||||||
{
|
{
|
||||||
rectTransform = GetComponent<RectTransform>();
|
rectTransform = GetComponent<RectTransform>();
|
||||||
|
UpdateCount();
|
||||||
for (int i = 0; i < count; i++)
|
|
||||||
{
|
|
||||||
GameObject line = Instantiate(transform.GetChild(0).gameObject, transform);
|
|
||||||
line.transform.localPosition = new Vector3(i, line.transform.localPosition.y);
|
|
||||||
line.SetActive(true);
|
|
||||||
|
|
||||||
Lines.Add(line);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Update()
|
private void LateUpdate()
|
||||||
{
|
{
|
||||||
var pos = new Vector2(Mathf.RoundToInt(Mathf.Abs(transform.parent.localPosition.x) / 100) - 1, transform.localPosition.y);
|
if (Editor.instance.fullscreen) return;
|
||||||
transform.localPosition = pos;
|
|
||||||
|
|
||||||
if (pos.x != lastPosX)
|
var x = Mathf.FloorToInt(contentPosX);
|
||||||
|
var pos = new Vector3(x, transform.localPosition.y, transform.localPosition.z);
|
||||||
|
transform.localPosition = pos;
|
||||||
|
GetComponent<RectTransform>().anchoredPosition = new Vector3(rectTransform.anchoredPosition.x, rectTransform.anchoredPosition.y, 0);
|
||||||
|
|
||||||
|
UpdateCount();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private void UpdateCount()
|
||||||
|
{
|
||||||
|
var changeScale = (scrollRect.viewport.rect.size.x != lastTimelineSize || scrollRect.content.localScale.x != lastContentScale);
|
||||||
|
if (changeScale)
|
||||||
|
{
|
||||||
|
var rightSide = (scrollRect.viewport.GetComponent<RectTransform>().rect.width / scrollRect.content.localScale.x) + contentPosX;
|
||||||
|
|
||||||
|
for (int i = 0; i < Lines.Count; i++)
|
||||||
|
Destroy(Lines[i].gameObject);
|
||||||
|
Lines.Clear();
|
||||||
|
|
||||||
|
count = Mathf.RoundToInt(rightSide - contentPosX) + 2;
|
||||||
|
|
||||||
|
for (int i = 0; i < count; i++)
|
||||||
|
{
|
||||||
|
var line = Instantiate(transform.GetChild(0).gameObject, transform);
|
||||||
|
line.transform.localPosition = new Vector3(i, line.transform.localPosition.y, line.transform.localPosition.z);
|
||||||
|
|
||||||
|
var halfBeatRect = line.transform.GetChild(2).GetComponent<RectTransform>();
|
||||||
|
halfBeatRect.anchoredPosition = new Vector3(scrollRect.content.localScale.x * 0.5f, halfBeatRect.anchoredPosition.y);
|
||||||
|
|
||||||
|
line.SetActive(true);
|
||||||
|
|
||||||
|
Lines.Add(line);
|
||||||
|
}
|
||||||
UpdateGridNum();
|
UpdateGridNum();
|
||||||
|
|
||||||
lastPosX = transform.localPosition.x;
|
if (count > 0) transform.GetChild(0).gameObject.SetActive(false);
|
||||||
|
}
|
||||||
|
if (scrollRect.content.anchoredPosition.x != lastPosX)
|
||||||
|
{
|
||||||
|
UpdateGridNum();
|
||||||
|
}
|
||||||
|
|
||||||
|
lastContentScale = scrollRect.content.localScale.x;
|
||||||
|
lastTimelineSize = scrollRect.viewport.rect.size.x;
|
||||||
|
lastPosX = scrollRect.content.anchoredPosition.x;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void UpdateGridNum()
|
private void UpdateGridNum()
|
||||||
|
@ -48,8 +105,10 @@ namespace HeavenStudio.Editor
|
||||||
for (int i = 0; i < Lines.Count; i++)
|
for (int i = 0; i < Lines.Count; i++)
|
||||||
{
|
{
|
||||||
var line = Lines[i];
|
var line = Lines[i];
|
||||||
float newNum = transform.localPosition.x + i;
|
if (line.transform.childCount == 0) continue;
|
||||||
line.transform.GetChild(0).GetComponent<TMP_Text>().text = newNum.ToString();
|
|
||||||
|
var newNum = Mathf.RoundToInt(rectTransform.anchoredPosition.x + ((i) / snap));
|
||||||
|
line.transform.GetChild(0).GetComponent<TMP_Text>().text = newNum.ToString(CultureInfo.CurrentCulture);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,7 +54,7 @@ namespace HeavenStudio.Editor
|
||||||
Camera camera = Editor.instance.EditorCamera;
|
Camera camera = Editor.instance.EditorCamera;
|
||||||
Vector3 scale = Editor.instance.MainCanvas.transform.localScale;
|
Vector3 scale = Editor.instance.MainCanvas.transform.localScale;
|
||||||
|
|
||||||
boxVisual.transform.localScale = new Vector2(0.01f/scale.x, 1f/scale.y);
|
boxVisual.transform.localScale = new Vector2((1f / Timeline.instance.TimelineContent.localScale.x) / scale.x, 1f / scale.y);
|
||||||
text.transform.localScale = scale;
|
text.transform.localScale = scale;
|
||||||
|
|
||||||
if (Selections.instance.eventsSelected.Count > 0 && Timeline.instance.InteractingWithEvents())
|
if (Selections.instance.eventsSelected.Count > 0 && Timeline.instance.InteractingWithEvents())
|
||||||
|
@ -79,7 +79,6 @@ namespace HeavenStudio.Editor
|
||||||
else
|
else
|
||||||
sizeText.text = string.Empty;
|
sizeText.text = string.Empty;
|
||||||
|
|
||||||
|
|
||||||
// click
|
// click
|
||||||
if (Input.GetMouseButtonDown(0))
|
if (Input.GetMouseButtonDown(0))
|
||||||
{
|
{
|
||||||
|
@ -178,8 +177,6 @@ namespace HeavenStudio.Editor
|
||||||
public Vector3 MousePosition()
|
public Vector3 MousePosition()
|
||||||
{
|
{
|
||||||
var mousePos = Editor.instance.EditorCamera.ScreenToWorldPoint(Input.mousePosition);
|
var mousePos = Editor.instance.EditorCamera.ScreenToWorldPoint(Input.mousePosition);
|
||||||
// var mousePos = new Vector2();
|
|
||||||
// RectTransformUtility.ScreenPointToLocalPointInRectangle(timelineContent, Input.mousePosition, Editor.instance.EditorCamera, out mousePos);
|
|
||||||
return new Vector3(mousePos.x, mousePos.y, 0);
|
return new Vector3(mousePos.x, mousePos.y, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
20
Assets/Scripts/LevelEditor/ButtonDoubleClick.cs
Normal file
20
Assets/Scripts/LevelEditor/ButtonDoubleClick.cs
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.Events;
|
||||||
|
using UnityEngine.EventSystems;
|
||||||
|
|
||||||
|
namespace HeavenStudio.Editor
|
||||||
|
{
|
||||||
|
public class ButtonDoubleClick : MonoBehaviour, IPointerClickHandler
|
||||||
|
{
|
||||||
|
public UnityEvent onDoubleClick;
|
||||||
|
|
||||||
|
public void OnPointerClick(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
var tap = eventData.clickCount;
|
||||||
|
if (tap == 2)
|
||||||
|
{
|
||||||
|
onDoubleClick.Invoke();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
11
Assets/Scripts/LevelEditor/ButtonDoubleClick.cs.meta
Normal file
11
Assets/Scripts/LevelEditor/ButtonDoubleClick.cs.meta
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: de2f4352e80c5d74db0f8380c1d3220e
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -112,7 +112,6 @@ namespace HeavenStudio.Editor
|
||||||
Tooltip.AddTooltip(UndoBTN.gameObject, "Undo <color=#adadad>[Ctrl+Z]</color>");
|
Tooltip.AddTooltip(UndoBTN.gameObject, "Undo <color=#adadad>[Ctrl+Z]</color>");
|
||||||
Tooltip.AddTooltip(RedoBTN.gameObject, "Redo <color=#adadad>[Ctrl+Y or Ctrl+Shift+Z]</color>");
|
Tooltip.AddTooltip(RedoBTN.gameObject, "Redo <color=#adadad>[Ctrl+Y or Ctrl+Shift+Z]</color>");
|
||||||
Tooltip.AddTooltip(MusicSelectBTN.gameObject, "Music Select");
|
Tooltip.AddTooltip(MusicSelectBTN.gameObject, "Music Select");
|
||||||
Tooltip.AddTooltip(EditorThemeBTN.gameObject, "Editor Theme");
|
|
||||||
Tooltip.AddTooltip(FullScreenBTN.gameObject, "Preview <color=#adadad>[Tab]</color>");
|
Tooltip.AddTooltip(FullScreenBTN.gameObject, "Preview <color=#adadad>[Tab]</color>");
|
||||||
Tooltip.AddTooltip(TempoFinderBTN.gameObject, "Tempo Finder");
|
Tooltip.AddTooltip(TempoFinderBTN.gameObject, "Tempo Finder");
|
||||||
Tooltip.AddTooltip(SnapDiagBTN.gameObject, "Snap Settings");
|
Tooltip.AddTooltip(SnapDiagBTN.gameObject, "Snap Settings");
|
||||||
|
@ -276,6 +275,7 @@ namespace HeavenStudio.Editor
|
||||||
changedMusic = true;
|
changedMusic = true;
|
||||||
|
|
||||||
Timeline.FitToSong();
|
Timeline.FitToSong();
|
||||||
|
Timeline.CreateWaveform();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
@ -485,6 +485,7 @@ namespace HeavenStudio.Editor
|
||||||
UpdateEditorStatus(false);
|
UpdateEditorStatus(false);
|
||||||
CommandManager.instance.Clear();
|
CommandManager.instance.Clear();
|
||||||
Timeline.FitToSong();
|
Timeline.FitToSong();
|
||||||
|
Timeline.CreateWaveform();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -492,6 +493,7 @@ namespace HeavenStudio.Editor
|
||||||
|
|
||||||
public void Fullscreen()
|
public void Fullscreen()
|
||||||
{
|
{
|
||||||
|
MainCanvas.gameObject.SetActive(fullscreen);
|
||||||
if (fullscreen == false)
|
if (fullscreen == false)
|
||||||
{
|
{
|
||||||
// EditorLetterbox.SetActive(false);
|
// EditorLetterbox.SetActive(false);
|
||||||
|
@ -503,6 +505,7 @@ namespace HeavenStudio.Editor
|
||||||
GameManager.instance.CursorCam.enabled = false;
|
GameManager.instance.CursorCam.enabled = false;
|
||||||
GameManager.instance.OverlayCamera.targetTexture = null;
|
GameManager.instance.OverlayCamera.targetTexture = null;
|
||||||
fullscreen = true;
|
fullscreen = true;
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -0,0 +1,32 @@
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
|
||||||
|
namespace HeavenStudio.Editor.Track
|
||||||
|
{
|
||||||
|
public class KeepSizeRelativeToContent : MonoBehaviour
|
||||||
|
{
|
||||||
|
private RectTransform rectTransform;
|
||||||
|
|
||||||
|
public float sizeDeltaXInternal;
|
||||||
|
|
||||||
|
public float sizeDeltaX = 1.0f;
|
||||||
|
public float multiply;
|
||||||
|
|
||||||
|
private void Start()
|
||||||
|
{
|
||||||
|
rectTransform = GetComponent<RectTransform>();
|
||||||
|
SetScale(Timeline.instance.TimelineContent.localScale.x);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LateUpdate()
|
||||||
|
{
|
||||||
|
SetScale(Timeline.instance.TimelineContent.localScale.x);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetScale(float scale)
|
||||||
|
{
|
||||||
|
rectTransform.localScale = new Vector3((1.0f / scale) * multiply, transform.localScale.y, 1);
|
||||||
|
LayoutRebuilder.ForceRebuildLayoutImmediate(rectTransform);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0ebb4f22da63ed144917cdff47f9c93c
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
29
Assets/Scripts/LevelEditor/Timeline/MiddleScrollRect.cs
Normal file
29
Assets/Scripts/LevelEditor/Timeline/MiddleScrollRect.cs
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
using UnityEngine.EventSystems;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
|
||||||
|
namespace HeavenStudio.Editor.Track
|
||||||
|
{
|
||||||
|
public class MiddleScrollRect : ScrollRect
|
||||||
|
{
|
||||||
|
public override void OnBeginDrag(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
if (eventData.button != PointerEventData.InputButton.Middle) return;
|
||||||
|
eventData.button = PointerEventData.InputButton.Left;
|
||||||
|
base.OnBeginDrag(eventData);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnEndDrag(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
if (eventData.button != PointerEventData.InputButton.Middle) return;
|
||||||
|
eventData.button = PointerEventData.InputButton.Left;
|
||||||
|
base.OnEndDrag(eventData);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnDrag(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
if (eventData.button != PointerEventData.InputButton.Middle) return;
|
||||||
|
eventData.button = PointerEventData.InputButton.Left;
|
||||||
|
base.OnDrag(eventData);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
11
Assets/Scripts/LevelEditor/Timeline/MiddleScrollRect.cs.meta
Normal file
11
Assets/Scripts/LevelEditor/Timeline/MiddleScrollRect.cs.meta
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b7d55b221d856de4f9bc712751f8cbd2
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -1,4 +1,5 @@
|
||||||
using System;
|
using System;
|
||||||
|
using System.Collections;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.UI;
|
using UnityEngine.UI;
|
||||||
|
@ -28,6 +29,9 @@ namespace HeavenStudio.Editor.Track
|
||||||
public CurrentTimelineState timelineState = new CurrentTimelineState();
|
public CurrentTimelineState timelineState = new CurrentTimelineState();
|
||||||
public float snapInterval = 0.25f; // 4/4
|
public float snapInterval = 0.25f; // 4/4
|
||||||
|
|
||||||
|
[Header("Components")]
|
||||||
|
[SerializeField] private RawImage waveform;
|
||||||
|
|
||||||
public static float SnapInterval() { return instance.snapInterval; }
|
public static float SnapInterval() { return instance.snapInterval; }
|
||||||
|
|
||||||
public void SetSnap(float snap) { snapInterval = snap; }
|
public void SetSnap(float snap) { snapInterval = snap; }
|
||||||
|
@ -121,7 +125,9 @@ namespace HeavenStudio.Editor.Track
|
||||||
[SerializeField] private RectTransform TimelineGridSelect;
|
[SerializeField] private RectTransform TimelineGridSelect;
|
||||||
[SerializeField] private RectTransform TimelineEventGrid;
|
[SerializeField] private RectTransform TimelineEventGrid;
|
||||||
[SerializeField] private TMP_Text TimelinePlaybackBeat;
|
[SerializeField] private TMP_Text TimelinePlaybackBeat;
|
||||||
|
public ScrollRect TimelineScroll;
|
||||||
public RectTransform TimelineContent;
|
public RectTransform TimelineContent;
|
||||||
|
[SerializeField] private ZoomComponent zoomComponent;
|
||||||
[SerializeField] private RectTransform TimelineSongPosLineRef;
|
[SerializeField] private RectTransform TimelineSongPosLineRef;
|
||||||
[SerializeField] private RectTransform TimelineEventObjRef;
|
[SerializeField] private RectTransform TimelineEventObjRef;
|
||||||
[SerializeField] private RectTransform LayersRect;
|
[SerializeField] private RectTransform LayersRect;
|
||||||
|
@ -149,10 +155,17 @@ namespace HeavenStudio.Editor.Track
|
||||||
public Button TempoChangeBTN;
|
public Button TempoChangeBTN;
|
||||||
public Button MusicVolumeBTN;
|
public Button MusicVolumeBTN;
|
||||||
public Button ChartSectionBTN;
|
public Button ChartSectionBTN;
|
||||||
|
public Button ZoomInBTN;
|
||||||
|
public Button ZoomOutBTN;
|
||||||
|
public Button ZoomResetBTN;
|
||||||
|
public Button WaveformBTN;
|
||||||
public Slider PlaybackSpeed;
|
public Slider PlaybackSpeed;
|
||||||
|
|
||||||
public Vector3[] LayerCorners = new Vector3[4];
|
public Vector3[] LayerCorners = new Vector3[4];
|
||||||
|
|
||||||
|
public float leftSide => (TimelineContent.localPosition.x / TimelineContent.localScale.x) * -1;
|
||||||
|
public float rightSide => (TimelineScroll.viewport.rect.width / TimelineContent.localScale.x) + leftSide;
|
||||||
|
|
||||||
public static Timeline instance { get; private set; }
|
public static Timeline instance { get; private set; }
|
||||||
|
|
||||||
public bool userIsEditingInputField
|
public bool userIsEditingInputField
|
||||||
|
@ -215,7 +228,7 @@ namespace HeavenStudio.Editor.Track
|
||||||
StopBTN.onClick.AddListener(delegate
|
StopBTN.onClick.AddListener(delegate
|
||||||
{
|
{
|
||||||
if (Conductor.instance.isPlaying || Conductor.instance.isPaused)
|
if (Conductor.instance.isPlaying || Conductor.instance.isPaused)
|
||||||
PlayCheck(true);
|
PlayCheck(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
MetronomeBTN.onClick.AddListener(delegate
|
MetronomeBTN.onClick.AddListener(delegate
|
||||||
|
@ -244,6 +257,23 @@ namespace HeavenStudio.Editor.Track
|
||||||
timelineState.SetState(CurrentTimelineState.State.ChartSection);
|
timelineState.SetState(CurrentTimelineState.State.ChartSection);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
ZoomInBTN.onClick.AddListener(delegate
|
||||||
|
{
|
||||||
|
zoomComponent.ZoomIn(3, Vector2.zero);
|
||||||
|
});
|
||||||
|
ZoomOutBTN.onClick.AddListener(delegate
|
||||||
|
{
|
||||||
|
zoomComponent.ZoomOut(-3, Vector2.zero);
|
||||||
|
});
|
||||||
|
ZoomResetBTN.onClick.AddListener(delegate
|
||||||
|
{
|
||||||
|
zoomComponent.ResetZoom();
|
||||||
|
});
|
||||||
|
WaveformBTN.onClick.AddListener(delegate
|
||||||
|
{
|
||||||
|
WaveformToggle();
|
||||||
|
});
|
||||||
|
|
||||||
Tooltip.AddTooltip(SongBeat.gameObject, "Current Beat");
|
Tooltip.AddTooltip(SongBeat.gameObject, "Current Beat");
|
||||||
Tooltip.AddTooltip(SongPos.gameObject, "Current Time");
|
Tooltip.AddTooltip(SongPos.gameObject, "Current Time");
|
||||||
Tooltip.AddTooltip(CurrentTempo.gameObject, "Current Tempo (BPM)");
|
Tooltip.AddTooltip(CurrentTempo.gameObject, "Current Tempo (BPM)");
|
||||||
|
@ -264,6 +294,11 @@ namespace HeavenStudio.Editor.Track
|
||||||
Tooltip.AddTooltip(StartingTempoSpecialTempo.gameObject, "Starting Tempo (BPM)");
|
Tooltip.AddTooltip(StartingTempoSpecialTempo.gameObject, "Starting Tempo (BPM)");
|
||||||
Tooltip.AddTooltip(StartingVolumeSpecialVolume.gameObject, "Starting Volume (%)");
|
Tooltip.AddTooltip(StartingVolumeSpecialVolume.gameObject, "Starting Volume (%)");
|
||||||
|
|
||||||
|
Tooltip.AddTooltip(ZoomInBTN.gameObject, "Zoom In");
|
||||||
|
Tooltip.AddTooltip(ZoomOutBTN.gameObject, "Zoom Out");
|
||||||
|
Tooltip.AddTooltip(ZoomResetBTN.gameObject, "Zoom Reset");
|
||||||
|
Tooltip.AddTooltip(WaveformBTN.gameObject, "Waveform Toggle");
|
||||||
|
|
||||||
Tooltip.AddTooltip(PlaybackSpeed.gameObject, "The preview's playback speed. Right click to reset to 1.0");
|
Tooltip.AddTooltip(PlaybackSpeed.gameObject, "The preview's playback speed. Right click to reset to 1.0");
|
||||||
|
|
||||||
SetTimeButtonColors(true, false, false);
|
SetTimeButtonColors(true, false, false);
|
||||||
|
@ -285,6 +320,13 @@ namespace HeavenStudio.Editor.Track
|
||||||
TimelineEventGrid.sizeDelta = new Vector2(songBeats, currentSizeDelta.y);
|
TimelineEventGrid.sizeDelta = new Vector2(songBeats, currentSizeDelta.y);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void CreateWaveform()
|
||||||
|
{
|
||||||
|
Debug.Log("what");
|
||||||
|
// DrawWaveform();
|
||||||
|
StartCoroutine(DrawWaveformRealtime());
|
||||||
|
}
|
||||||
|
|
||||||
public void AutoBtnUpdate()
|
public void AutoBtnUpdate()
|
||||||
{
|
{
|
||||||
var animName = GameManager.instance.autoplay ? "Idle" : "Disabled";
|
var animName = GameManager.instance.autoplay ? "Idle" : "Disabled";
|
||||||
|
@ -329,6 +371,12 @@ namespace HeavenStudio.Editor.Track
|
||||||
|
|
||||||
private void Update()
|
private void Update()
|
||||||
{
|
{
|
||||||
|
waveform.rectTransform.anchoredPosition = new Vector2(
|
||||||
|
-(GameManager.instance.Beatmap.firstBeatOffset / (60.0f / GameManager.instance.Beatmap.bpm)),
|
||||||
|
waveform.rectTransform.anchoredPosition.y);
|
||||||
|
|
||||||
|
WaveformBTN.transform.GetChild(0).GetComponent<Image>().color = (Conductor.instance.musicSource.clip != null && waveform.gameObject.activeInHierarchy) ? Color.white : Color.gray;
|
||||||
|
|
||||||
if (!Conductor.instance.isPlaying && !Conductor.instance.isPaused)
|
if (!Conductor.instance.isPlaying && !Conductor.instance.isPaused)
|
||||||
{
|
{
|
||||||
SongBeat.text = $"Beat {string.Format("{0:0.000}", TimelineSlider.localPosition.x)}";
|
SongBeat.text = $"Beat {string.Format("{0:0.000}", TimelineSlider.localPosition.x)}";
|
||||||
|
@ -386,9 +434,13 @@ namespace HeavenStudio.Editor.Track
|
||||||
timelineState.SetState(CurrentTimelineState.State.ChartSection);
|
timelineState.SetState(CurrentTimelineState.State.ChartSection);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Input.GetKeyDown(KeyCode.F))
|
||||||
|
{
|
||||||
|
PlaybackFocus(false);
|
||||||
|
}
|
||||||
|
|
||||||
float moveSpeed = 750;
|
float moveSpeed = 750;
|
||||||
if (Input.GetKey(KeyCode.LeftShift)) moveSpeed *= 2;
|
if (Input.GetKey(KeyCode.LeftShift)) moveSpeed *= 6;
|
||||||
|
|
||||||
if (Input.GetKey(KeyCode.LeftArrow) || Input.GetKey(KeyCode.A))
|
if (Input.GetKey(KeyCode.LeftArrow) || Input.GetKey(KeyCode.A))
|
||||||
{
|
{
|
||||||
|
@ -421,7 +473,7 @@ namespace HeavenStudio.Editor.Track
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Conductor.instance.isPlaying)
|
if (Conductor.instance.isPlaying)
|
||||||
TimelineContent.transform.localPosition = new Vector3((-Conductor.instance.songPositionInBeats * 100) + 200, TimelineContent.transform.localPosition.y);
|
PlaybackFocus(true);
|
||||||
|
|
||||||
TimelineContent.transform.localPosition = new Vector3(Mathf.Clamp(TimelineContent.transform.localPosition.x, Mathf.NegativeInfinity, 0), TimelineContent.transform.localPosition.y);
|
TimelineContent.transform.localPosition = new Vector3(Mathf.Clamp(TimelineContent.transform.localPosition.x, Mathf.NegativeInfinity, 0), TimelineContent.transform.localPosition.y);
|
||||||
|
|
||||||
|
@ -574,10 +626,117 @@ namespace HeavenStudio.Editor.Track
|
||||||
{
|
{
|
||||||
return (this.gameObject.activeSelf && RectTransformUtility.RectangleContainsScreenPoint(TimelineEventGrid, Input.mousePosition, Editor.instance.EditorCamera));
|
return (this.gameObject.activeSelf && RectTransformUtility.RectangleContainsScreenPoint(TimelineEventGrid, Input.mousePosition, Editor.instance.EditorCamera));
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Functions
|
#region Functions
|
||||||
|
|
||||||
|
public void PlaybackFocus(bool lerp)
|
||||||
|
{
|
||||||
|
var lerpSpd = (lerp) ? 12f : 10000000; // im lazy
|
||||||
|
|
||||||
|
var newPos = new Vector3((-Conductor.instance.songPositionInBeats * TimelineContent.localScale.x) + 200, TimelineContent.transform.localPosition.y);
|
||||||
|
TimelineContent.transform.localPosition =
|
||||||
|
Vector3.Lerp(TimelineContent.transform.localPosition, newPos, Time.deltaTime * lerpSpd);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void WaveformToggle()
|
||||||
|
{
|
||||||
|
if (Conductor.instance.musicSource.clip == null) return;
|
||||||
|
|
||||||
|
waveform.gameObject.SetActive(!waveform.gameObject.activeInHierarchy);
|
||||||
|
}
|
||||||
|
|
||||||
|
public IEnumerator DrawWaveformRealtime()
|
||||||
|
{
|
||||||
|
var clip = Conductor.instance.musicSource.clip;
|
||||||
|
|
||||||
|
if (!clip)
|
||||||
|
yield break;
|
||||||
|
|
||||||
|
waveform.rectTransform.sizeDelta = new Vector2(Conductor.instance.SongLengthInBeats() + 0.15f, waveform.rectTransform.sizeDelta.y);
|
||||||
|
waveform.color = Color.white;
|
||||||
|
|
||||||
|
var num = 12000;
|
||||||
|
var num2 = 1f;
|
||||||
|
var num3 = clip.samples * clip.channels;
|
||||||
|
var array = new float[num3];
|
||||||
|
var wave = new float[num];
|
||||||
|
clip.GetData(array, 0);
|
||||||
|
int packsize = num3 / num;
|
||||||
|
Debug.Log($"drawing waveform. samples:, {clip.samples}, packsize: {packsize}");
|
||||||
|
float num5 = 0f;
|
||||||
|
int num6 = 0;
|
||||||
|
int num7 = 0;
|
||||||
|
for (int i = 0; i < num3; i++)
|
||||||
|
{
|
||||||
|
wave[num6] += Mathf.Abs(array[i]);
|
||||||
|
num7++;
|
||||||
|
if (num7 > packsize)
|
||||||
|
{
|
||||||
|
if (num5 < wave[num6])
|
||||||
|
{
|
||||||
|
num5 = wave[num6];
|
||||||
|
}
|
||||||
|
num6++;
|
||||||
|
num7 = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (int j = 0; j < num; j++)
|
||||||
|
{
|
||||||
|
wave[j] /= num5 * num2;
|
||||||
|
if (wave[j] > 1f)
|
||||||
|
{
|
||||||
|
wave[j] = 1f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int height = 200;
|
||||||
|
Color col = Colors.Hex2RGB("727272");
|
||||||
|
col.a = 0.25f;
|
||||||
|
|
||||||
|
Texture2D tex = new Texture2D(wave.Length, height, TextureFormat.RGBA32, false);
|
||||||
|
|
||||||
|
FillColorAlpha(tex, new Color32(0, 0, 0, 0));
|
||||||
|
|
||||||
|
this.waveform.texture = tex;
|
||||||
|
int waveI = 0;
|
||||||
|
while (waveI < wave.Length)
|
||||||
|
{
|
||||||
|
int num8 = waveI;
|
||||||
|
while (num8 < waveI + 100 && waveI < wave.Length)
|
||||||
|
{
|
||||||
|
int num9 = 0;
|
||||||
|
while ((float)num9 <= wave[num8] * (float)height / 2f)
|
||||||
|
{
|
||||||
|
tex.SetPixel(num8, height / 2 + num9, col);
|
||||||
|
tex.SetPixel(num8, height / 2 - num9, col);
|
||||||
|
num9++;
|
||||||
|
}
|
||||||
|
num8++;
|
||||||
|
}
|
||||||
|
waveI += 100;
|
||||||
|
tex.Apply();
|
||||||
|
yield return null;
|
||||||
|
}
|
||||||
|
tex.Apply();
|
||||||
|
yield break;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Texture2D FillColorAlpha(Texture2D tex2D, Color32? fillColor = null)
|
||||||
|
{
|
||||||
|
if (fillColor == null)
|
||||||
|
{
|
||||||
|
fillColor = Color.clear;
|
||||||
|
}
|
||||||
|
Color32[] fillPixels = new Color32[tex2D.width * tex2D.height];
|
||||||
|
for (int i = 0; i < fillPixels.Length; i++)
|
||||||
|
{
|
||||||
|
fillPixels[i] = (Color32)fillColor;
|
||||||
|
}
|
||||||
|
tex2D.SetPixels32(fillPixels);
|
||||||
|
return tex2D;
|
||||||
|
}
|
||||||
|
|
||||||
public TimelineEventObj AddEventObject(string eventName, bool dragNDrop = false, Vector3 pos = new Vector3(), DynamicBeatmap.DynamicEntity entity = null, bool addEvent = false, string eventId = "")
|
public TimelineEventObj AddEventObject(string eventName, bool dragNDrop = false, Vector3 pos = new Vector3(), DynamicBeatmap.DynamicEntity entity = null, bool addEvent = false, string eventId = "")
|
||||||
{
|
{
|
||||||
var game = EventCaller.instance.GetMinigame(eventName.Split(0));
|
var game = EventCaller.instance.GetMinigame(eventName.Split(0));
|
||||||
|
|
|
@ -85,11 +85,7 @@ namespace HeavenStudio.Editor.Track
|
||||||
var leftSide = rectTransform.localPosition.x;
|
var leftSide = rectTransform.localPosition.x;
|
||||||
var rightSide = leftSide + rectTransform.sizeDelta.x;
|
var rightSide = leftSide + rectTransform.sizeDelta.x;
|
||||||
|
|
||||||
var timelineLeftSide = (Timeline.instance.TimelineContent.localPosition.x / 100f) * -1;
|
bool visible = (rightSide >= Timeline.instance.leftSide && leftSide <= Timeline.instance.rightSide);
|
||||||
var timelineRightSide = timelineLeftSide + 10.563f; // what a magic number, i'm sure I could calculate this but I'm lazy
|
|
||||||
|
|
||||||
bool visible = (rightSide >= timelineLeftSide && leftSide <= timelineRightSide);
|
|
||||||
|
|
||||||
|
|
||||||
if (visible != lastVisible)
|
if (visible != lastVisible)
|
||||||
{
|
{
|
||||||
|
@ -480,6 +476,7 @@ namespace HeavenStudio.Editor.Track
|
||||||
private void OnDestroy()
|
private void OnDestroy()
|
||||||
{
|
{
|
||||||
// better safety net than canada's healthcare system
|
// better safety net than canada's healthcare system
|
||||||
|
// this is still hilarious
|
||||||
// GameManager.instance.Beatmap.entities.Remove(GameManager.instance.Beatmap.entities.Find(c => c.eventObj = this));
|
// GameManager.instance.Beatmap.entities.Remove(GameManager.instance.Beatmap.entities.Find(c => c.eventObj = this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
76
Assets/Scripts/LevelEditor/Timeline/ZoomComponent.cs
Normal file
76
Assets/Scripts/LevelEditor/Timeline/ZoomComponent.cs
Normal file
|
@ -0,0 +1,76 @@
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.EventSystems;
|
||||||
|
using static TMPro.SpriteAssetUtilities.TexturePacker_JsonArray;
|
||||||
|
|
||||||
|
namespace HeavenStudio.Editor.Track
|
||||||
|
{
|
||||||
|
public class ZoomComponent : MonoBehaviour, IScrollHandler
|
||||||
|
{
|
||||||
|
[SerializeField] float _minimumScale = 0.5f;
|
||||||
|
[SerializeField] Vector2 _initialScale = Vector2.one;
|
||||||
|
[SerializeField] float _maximumScale = 3f;
|
||||||
|
[SerializeField] float _scaleIncrement = .5f;
|
||||||
|
|
||||||
|
[HideInInspector] Vector3 _scale;
|
||||||
|
|
||||||
|
RectTransform _thisTransform;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
_initialScale = transform.localScale;
|
||||||
|
_thisTransform = transform as RectTransform;
|
||||||
|
|
||||||
|
_scale.Set(_initialScale.x, _initialScale.y, 1);
|
||||||
|
_thisTransform.localScale = _scale;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnScroll(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
Vector2 relativeMousePosition;
|
||||||
|
|
||||||
|
RectTransformUtility.ScreenPointToLocalPointInRectangle(_thisTransform, Input.mousePosition, Editor.instance.EditorCamera, out relativeMousePosition);
|
||||||
|
|
||||||
|
float delta = eventData.scrollDelta.y;
|
||||||
|
delta = Mathf.Clamp(delta, -1f, 1f);
|
||||||
|
|
||||||
|
_scaleIncrement = 0.1f * _scale.x;
|
||||||
|
|
||||||
|
if (delta > 0 && _scale.x < _maximumScale)
|
||||||
|
{
|
||||||
|
ZoomIn(delta, relativeMousePosition);
|
||||||
|
}
|
||||||
|
else if (delta < 0 && _scale.x > _minimumScale)
|
||||||
|
{
|
||||||
|
ZoomOut(delta, relativeMousePosition);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ZoomIn(float delta, Vector2 relativeMousePosition)
|
||||||
|
{
|
||||||
|
float incre = _scaleIncrement * delta;
|
||||||
|
|
||||||
|
var newScale = Mathf.Clamp(_scale.x + incre, _minimumScale, _maximumScale);
|
||||||
|
_scale.Set(newScale, 1, 1);
|
||||||
|
_thisTransform.localScale = _scale;
|
||||||
|
relativeMousePosition = new Vector2(relativeMousePosition.x, 0);
|
||||||
|
_thisTransform.anchoredPosition -= (relativeMousePosition * incre);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ZoomOut(float delta, Vector2 relativeMousePosition)
|
||||||
|
{
|
||||||
|
float incre = _scaleIncrement * -delta;
|
||||||
|
|
||||||
|
var newScale = _scale.x - incre;
|
||||||
|
_scale.Set(newScale, 1, 1);
|
||||||
|
_thisTransform.localScale = _scale;
|
||||||
|
relativeMousePosition = new Vector2(relativeMousePosition.x, 0);
|
||||||
|
_thisTransform.anchoredPosition += (relativeMousePosition * incre);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ResetZoom()
|
||||||
|
{
|
||||||
|
_scale.Set(100, 1, 1);
|
||||||
|
_thisTransform.localScale = _scale;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
11
Assets/Scripts/LevelEditor/Timeline/ZoomComponent.cs.meta
Normal file
11
Assets/Scripts/LevelEditor/Timeline/ZoomComponent.cs.meta
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d6a4c5ae13e9de743befd392956aaea7
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
Loading…
Reference in a new issue