Music and transparent fixes
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3d69da96f4ccb4de5910011cfc1e07a1
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,11 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace Darkmatter.Core.Contracts.Services.Music
|
||||
{
|
||||
public interface IMusicService
|
||||
{
|
||||
void Play(AudioClip clip, float volume01 = 1f, bool loop = true);
|
||||
void Stop(float fadeOutSeconds = 0f);
|
||||
void SetVolume(float volume01);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f851c65abe6f240a894610f67360fe58
|
||||
@@ -43,6 +43,7 @@ namespace Darkmatter.Features.GameplayFlow.Systems
|
||||
|
||||
private IDisposable _assembledSub;
|
||||
private IDisposable _colorAppliedSub;
|
||||
private IDisposable _drawingSelectedSub;
|
||||
private CancellationTokenSource _autosaveCts;
|
||||
private CancellationTokenSource _scopeCts;
|
||||
|
||||
@@ -89,6 +90,7 @@ namespace Darkmatter.Features.GameplayFlow.Systems
|
||||
|
||||
_assembledSub = _bus.Subscribe<ShapeAssembledSignal>(OnShapeAssembled);
|
||||
_colorAppliedSub = _bus.Subscribe<ColorAppliedSignal>(OnColorApplied);
|
||||
_drawingSelectedSub = _bus.Subscribe<DrawingSelectedSignal>(OnDrawingSelected);
|
||||
|
||||
Application.quitting += OnAppQuitting;
|
||||
Application.focusChanged += OnAppFocusChanged;
|
||||
@@ -188,6 +190,24 @@ namespace Darkmatter.Features.GameplayFlow.Systems
|
||||
DebouncedAutosaveAsync(_autosaveCts.Token).Forget();
|
||||
}
|
||||
|
||||
private void OnDrawingSelected(DrawingSelectedSignal signal)
|
||||
{
|
||||
if (string.IsNullOrEmpty(signal.TemplateId)) return;
|
||||
if (signal.TemplateId == _templateId) return;
|
||||
EditAsync(signal.TemplateId).Forget();
|
||||
}
|
||||
|
||||
private async UniTaskVoid EditAsync(string newTemplateId)
|
||||
{
|
||||
await SaveCurrentAsync(CancellationToken.None);
|
||||
_loadingScreen.Show();
|
||||
_shapeBuilder.Clear();
|
||||
_coloring.Clear();
|
||||
await _scenes.LoadSceneAsync(nameof(GameScene.Colorbook), progress: null, cancellationToken: default);
|
||||
await _scenes.UnloadSceneAsync(nameof(GameScene.Gameplay), progress: null, cancellationToken: default);
|
||||
_bus.Publish(new DrawingSelectedSignal(newTemplateId));
|
||||
}
|
||||
|
||||
private async UniTaskVoid DebouncedAutosaveAsync(CancellationToken ct)
|
||||
{
|
||||
try
|
||||
@@ -246,6 +266,7 @@ namespace Darkmatter.Features.GameplayFlow.Systems
|
||||
|
||||
_assembledSub?.Dispose();
|
||||
_colorAppliedSub?.Dispose();
|
||||
_drawingSelectedSub?.Dispose();
|
||||
_autosaveCts?.Cancel();
|
||||
_autosaveCts?.Dispose();
|
||||
_scopeCts?.Cancel();
|
||||
|
||||
@@ -1,89 +1,115 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Cysharp.Threading.Tasks;
|
||||
using Darkmatter.Core.Contracts.Services.Camera;
|
||||
using Darkmatter.Core.Contracts.Services.Capture;
|
||||
using UnityEngine;
|
||||
using CameraType = Darkmatter.Core.Enums.Services.Camera.CameraType;
|
||||
|
||||
namespace Darkmatter.Services.Capture
|
||||
{
|
||||
public class CaptureService : ICaptureService
|
||||
{
|
||||
private readonly ICameraService _cameraService;
|
||||
|
||||
public CaptureService(ICameraService cameraService) => _cameraService = cameraService;
|
||||
|
||||
public async UniTask<byte[]> CapturePngAsync(GameObject captureObject, float scale,
|
||||
CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (captureObject == null) return null;
|
||||
var paperRT = captureObject.transform as RectTransform;
|
||||
var paperCanvas = GetRootCanvas(captureObject);
|
||||
var disabledCanvases = DisableOtherRootCanvases(paperCanvas);
|
||||
var disabledGraphics = HideNonPaperGraphics(captureObject != null ? captureObject.transform : null);
|
||||
var cam = Camera.main;
|
||||
CameraClearFlags prevFlags = default;
|
||||
Color prevBg = default;
|
||||
if (cam != null)
|
||||
{
|
||||
prevFlags = cam.clearFlags;
|
||||
prevBg = cam.backgroundColor;
|
||||
cam.clearFlags = CameraClearFlags.SolidColor;
|
||||
cam.backgroundColor = new Color(0f, 0f, 0f, 0f);
|
||||
}
|
||||
|
||||
await UniTask.WaitForEndOfFrame(cancellationToken);
|
||||
var cam = _cameraService.GetCamera(CameraType.CaptureCamera);
|
||||
if (paperCanvas == null || paperRT == null || cam == null) return null;
|
||||
|
||||
int sw = Screen.width;
|
||||
int sh = Screen.height;
|
||||
var captureRT = RenderTexture.GetTemporary(sw, sh, 0, RenderTextureFormat.ARGB32);
|
||||
ScreenCapture.CaptureScreenshotIntoRenderTexture(captureRT);
|
||||
|
||||
var prevActive = RenderTexture.active;
|
||||
RenderTexture.active = captureRT;
|
||||
var fullScreen = new Texture2D(sw, sh, TextureFormat.RGBA32, mipChain: false);
|
||||
fullScreen.ReadPixels(new Rect(0, 0, sw, sh), 0, 0);
|
||||
fullScreen.Apply();
|
||||
RenderTexture.active = prevActive;
|
||||
RenderTexture.ReleaseTemporary(captureRT);
|
||||
var disabledCanvases = DisableOtherRootCanvases(paperCanvas);
|
||||
var disabledGraphics = HideNonPaperGraphics(paperRT);
|
||||
|
||||
FlipVertical(fullScreen);
|
||||
Rect crop = ComputeCropRect(captureObject, sw, sh);
|
||||
int cropW = Mathf.Max(1, (int)crop.width);
|
||||
int cropH = Mathf.Max(1, (int)crop.height);
|
||||
|
||||
var prevFlags = cam.clearFlags;
|
||||
var prevBg = cam.backgroundColor;
|
||||
var prevTarget = cam.targetTexture;
|
||||
cam.clearFlags = CameraClearFlags.SolidColor;
|
||||
cam.backgroundColor = new Color(0f, 0f, 0f, 0f);
|
||||
|
||||
var rt = RenderTexture.GetTemporary(sw, sh, 24, RenderTextureFormat.ARGB32);
|
||||
cam.targetTexture = rt;
|
||||
|
||||
var prevMode = paperCanvas.renderMode;
|
||||
var prevWorldCam = paperCanvas.worldCamera;
|
||||
var prevPlaneDist = paperCanvas.planeDistance;
|
||||
paperCanvas.renderMode = RenderMode.ScreenSpaceCamera;
|
||||
paperCanvas.worldCamera = cam;
|
||||
paperCanvas.planeDistance = Mathf.Max(0.5f, (cam.nearClipPlane + cam.farClipPlane) * 0.5f);
|
||||
|
||||
try
|
||||
{
|
||||
Rect crop = ComputeCropRect(captureObject, fullScreen.width, fullScreen.height);
|
||||
int cropW = Mathf.Max(1, (int)crop.width);
|
||||
int cropH = Mathf.Max(1, (int)crop.height);
|
||||
await UniTask.WaitForEndOfFrame(cancellationToken);
|
||||
Canvas.ForceUpdateCanvases();
|
||||
cam.Render();
|
||||
|
||||
var prevActive = RenderTexture.active;
|
||||
RenderTexture.active = rt;
|
||||
var fullScreen = new Texture2D(sw, sh, TextureFormat.RGBA32, mipChain: false);
|
||||
fullScreen.ReadPixels(new Rect(0, 0, sw, sh), 0, 0);
|
||||
fullScreen.Apply();
|
||||
RenderTexture.active = prevActive;
|
||||
|
||||
var cropped = new Texture2D(cropW, cropH, TextureFormat.RGBA32, mipChain: false);
|
||||
try
|
||||
{
|
||||
cropped.SetPixels(fullScreen.GetPixels((int)crop.x, (int)crop.y, cropW, cropH));
|
||||
cropped.Apply();
|
||||
|
||||
int targetW = Mathf.Max(1, Mathf.RoundToInt(cropW * scale));
|
||||
int targetH = Mathf.Max(1, Mathf.RoundToInt(cropH * scale));
|
||||
Texture2D output = cropped;
|
||||
if (output.width != targetW || output.height != targetH)
|
||||
output = Resize(cropped, targetW, targetH);
|
||||
|
||||
var cropped = new Texture2D(cropW, cropH, TextureFormat.RGBA32, mipChain: false);
|
||||
try
|
||||
{
|
||||
return output.EncodeToPNG();
|
||||
cropped.SetPixels(fullScreen.GetPixels((int)crop.x, (int)crop.y, cropW, cropH));
|
||||
cropped.Apply();
|
||||
|
||||
int targetW = Mathf.Max(1, Mathf.RoundToInt(cropW * scale));
|
||||
int targetH = Mathf.Max(1, Mathf.RoundToInt(cropH * scale));
|
||||
Texture2D output = cropped;
|
||||
if (output.width != targetW || output.height != targetH)
|
||||
output = Resize(cropped, targetW, targetH);
|
||||
|
||||
try
|
||||
{
|
||||
return output.EncodeToPNG();
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (output != cropped) Object.Destroy(output);
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (output != cropped) Object.Destroy(output);
|
||||
Object.Destroy(cropped);
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
Object.Destroy(cropped);
|
||||
Object.Destroy(fullScreen);
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
Object.Destroy(fullScreen);
|
||||
foreach (var g in disabledGraphics) if (g != null) g.enabled = true;
|
||||
foreach (var c in disabledCanvases) if (c != null) c.enabled = true;
|
||||
if (cam != null)
|
||||
{
|
||||
cam.clearFlags = prevFlags;
|
||||
cam.backgroundColor = prevBg;
|
||||
}
|
||||
paperCanvas.renderMode = prevMode;
|
||||
paperCanvas.worldCamera = prevWorldCam;
|
||||
paperCanvas.planeDistance = prevPlaneDist;
|
||||
cam.targetTexture = prevTarget;
|
||||
cam.clearFlags = prevFlags;
|
||||
cam.backgroundColor = prevBg;
|
||||
RenderTexture.ReleaseTemporary(rt);
|
||||
foreach (var g in disabledGraphics)
|
||||
if (g != null)
|
||||
g.enabled = true;
|
||||
foreach (var c in disabledCanvases)
|
||||
if (c != null)
|
||||
c.enabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -104,6 +130,7 @@ namespace Darkmatter.Services.Capture
|
||||
c.enabled = false;
|
||||
disabled.Add(c);
|
||||
}
|
||||
|
||||
return disabled;
|
||||
}
|
||||
|
||||
@@ -119,6 +146,7 @@ namespace Darkmatter.Services.Capture
|
||||
g.enabled = false;
|
||||
disabled.Add(g);
|
||||
}
|
||||
|
||||
return disabled;
|
||||
}
|
||||
|
||||
@@ -129,7 +157,6 @@ namespace Darkmatter.Services.Capture
|
||||
|
||||
var corners = new Vector3[4];
|
||||
rt.GetWorldCorners(corners);
|
||||
// ScreenSpaceOverlay canvas: world corners are already in screen pixels.
|
||||
float minX = Mathf.Clamp(corners[0].x, 0, screenW);
|
||||
float minY = Mathf.Clamp(corners[0].y, 0, screenH);
|
||||
float maxX = Mathf.Clamp(corners[2].x, 0, screenW);
|
||||
@@ -137,18 +164,6 @@ namespace Darkmatter.Services.Capture
|
||||
return Rect.MinMaxRect(minX, minY, maxX, maxY);
|
||||
}
|
||||
|
||||
private static void FlipVertical(Texture2D tex)
|
||||
{
|
||||
int w = tex.width, h = tex.height;
|
||||
var pixels = tex.GetPixels();
|
||||
var flipped = new Color[pixels.Length];
|
||||
for (int y = 0; y < h; y++)
|
||||
for (int x = 0; x < w; x++)
|
||||
flipped[(h - 1 - y) * w + x] = pixels[y * w + x];
|
||||
tex.SetPixels(flipped);
|
||||
tex.Apply();
|
||||
}
|
||||
|
||||
private static Texture2D Resize(Texture2D src, int width, int height)
|
||||
{
|
||||
var rt = RenderTexture.GetTemporary(width, height);
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
using Darkmatter.Core.Contracts.Services.Music;
|
||||
using Darkmatter.Libs.Installers;
|
||||
using Darkmatter.Services.Music.Systems;
|
||||
using UnityEngine;
|
||||
using VContainer;
|
||||
using VContainer.Unity;
|
||||
|
||||
namespace Darkmatter.Services.Music.Installers
|
||||
{
|
||||
public class MusicServiceModule : MonoBehaviour, IModule
|
||||
{
|
||||
[SerializeField] private AudioClip defaultTrack;
|
||||
[SerializeField, Range(0f, 1f)] private float defaultVolume = 0.7f;
|
||||
[SerializeField, Min(0f)] private float crossFadeSeconds = 0.4f;
|
||||
|
||||
public void Register(IContainerBuilder builder)
|
||||
{
|
||||
builder.RegisterInstance(new MusicConfig(defaultTrack, defaultVolume, crossFadeSeconds));
|
||||
builder.RegisterEntryPoint<MusicService>(Lifetime.Singleton).As<IMusicService>();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 47cce31d8e31341a0ae46684e87cbd95
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4c15bf1ed26cf4c8f8339b22cb57efc6
|
||||
@@ -0,0 +1,70 @@
|
||||
using System;
|
||||
using Darkmatter.Core.Contracts.Services.Audio;
|
||||
using Darkmatter.Core.Contracts.Services.Music;
|
||||
using Darkmatter.Core.Data.Dynamic.Services.Audio;
|
||||
using Darkmatter.Core.Data.Signals.Features.AppBoot;
|
||||
using Darkmatter.Core.Enums.Services.Audio;
|
||||
using Darkmatter.Libs.Observer;
|
||||
using UnityEngine;
|
||||
using VContainer.Unity;
|
||||
|
||||
namespace Darkmatter.Services.Music.Systems
|
||||
{
|
||||
public class MusicService : IMusicService, IStartable, IDisposable
|
||||
{
|
||||
private readonly IAudioService _audio;
|
||||
private readonly IEventBus _bus;
|
||||
private readonly MusicConfig _config;
|
||||
|
||||
private AudioHandle _current;
|
||||
private IDisposable _introSub;
|
||||
|
||||
public MusicService(IAudioService audio, IEventBus bus, MusicConfig config)
|
||||
{
|
||||
_audio = audio;
|
||||
_bus = bus;
|
||||
_config = config;
|
||||
}
|
||||
|
||||
public void Start()
|
||||
{
|
||||
_introSub = _bus.Subscribe<IntroCompletedSignal>(OnIntroCompleted);
|
||||
}
|
||||
|
||||
private void OnIntroCompleted(IntroCompletedSignal _)
|
||||
{
|
||||
if (_config.DefaultTrack != null && !_current.IsValid)
|
||||
Play(_config.DefaultTrack, _config.DefaultVolume, loop: true);
|
||||
}
|
||||
|
||||
public void Play(AudioClip clip, float volume01 = 1f, bool loop = true)
|
||||
{
|
||||
if (clip == null) return;
|
||||
if (_current.IsValid) _audio.Stop(_current, _config.CrossFadeSeconds);
|
||||
|
||||
var req = new AudioRequest(
|
||||
clip: clip,
|
||||
channel: AudioChannel.Music,
|
||||
mode: loop ? AudioPlayMode.Loop : AudioPlayMode.OneShot,
|
||||
stopChannelBeforePlay: true,
|
||||
volume01: Mathf.Clamp01(volume01));
|
||||
_current = _audio.Play(req);
|
||||
}
|
||||
|
||||
public void Stop(float fadeOutSeconds = 0f)
|
||||
{
|
||||
if (_current.IsValid) _audio.Stop(_current, fadeOutSeconds);
|
||||
_current = AudioHandle.Invalid;
|
||||
}
|
||||
|
||||
public void SetVolume(float volume01)
|
||||
{
|
||||
if (_current.IsValid) _audio.SetVolume(_current, Mathf.Clamp01(volume01));
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
_introSub?.Dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8b4c07c26f9a44409bd43d2777b9951d
|
||||
8
Assets/Darkmatter/Content/Audio.meta
Normal file
8
Assets/Darkmatter/Content/Audio.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 854202d005e754405862e01141384a81
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Darkmatter/Content/Audio/BGM.mp3
Normal file
BIN
Assets/Darkmatter/Content/Audio/BGM.mp3
Normal file
Binary file not shown.
23
Assets/Darkmatter/Content/Audio/BGM.mp3.meta
Normal file
23
Assets/Darkmatter/Content/Audio/BGM.mp3.meta
Normal file
@@ -0,0 +1,23 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d2ea12320736942649eb53c30ab7e4bb
|
||||
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:
|
||||
BIN
Assets/Darkmatter/Content/Colorbook UI/.DS_Store
vendored
BIN
Assets/Darkmatter/Content/Colorbook UI/.DS_Store
vendored
Binary file not shown.
Binary file not shown.
@@ -149,8 +149,8 @@ RectTransform:
|
||||
m_GameObject: {fileID: 586400654407708949}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_LocalScale: {x: 2.5, y: 2.5, z: 2.5}
|
||||
m_ConstrainProportionsScale: 1
|
||||
m_Children: []
|
||||
m_Father: {fileID: 5888896414592815468}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
@@ -791,8 +791,8 @@ RectTransform:
|
||||
m_GameObject: {fileID: 2126798923183367092}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_LocalScale: {x: 2.5, y: 2.5, z: 2.5}
|
||||
m_ConstrainProportionsScale: 1
|
||||
m_Children: []
|
||||
m_Father: {fileID: 3594603427028553980}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
|
||||
BIN
Assets/Darkmatter/Content/Colorbook UI/apple.png
Normal file
BIN
Assets/Darkmatter/Content/Colorbook UI/apple.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 52 KiB |
182
Assets/Darkmatter/Content/Colorbook UI/apple.png.meta
Normal file
182
Assets/Darkmatter/Content/Colorbook UI/apple.png.meta
Normal file
@@ -0,0 +1,182 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 642217a8618e94c7ba1322adee7fbe28
|
||||
TextureImporter:
|
||||
internalIDToNameTable:
|
||||
- first:
|
||||
213: -7832214784768987486
|
||||
second: apple_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: 2
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 4
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 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
|
||||
- serializedVersion: 4
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: iOS
|
||||
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: apple_0
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 301
|
||||
y: 56
|
||||
width: 473
|
||||
height: 497
|
||||
alignment: 0
|
||||
pivot: {x: 0, y: 0}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
customData:
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: -1
|
||||
bones: []
|
||||
spriteID: 2ae284d66226e4390800000000000000
|
||||
internalID: -7832214784768987486
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable:
|
||||
apple_0: -7832214784768987486
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -948,6 +948,53 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 355949970}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &361052050
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 361052051}
|
||||
- component: {fileID: 361052052}
|
||||
m_Layer: 0
|
||||
m_Name: MusicServiceModule
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &361052051
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 361052050}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1050564725}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &361052052
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 361052050}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 47cce31d8e31341a0ae46684e87cbd95, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Assembly-CSharp::Darkmatter.Services.Music.Installers.MusicServiceModule
|
||||
defaultTrack: {fileID: 8300000, guid: d2ea12320736942649eb53c30ab7e4bb, type: 3}
|
||||
defaultVolume: 0.7
|
||||
crossFadeSeconds: 0.4
|
||||
--- !u!1 &445008005
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -1446,6 +1493,7 @@ Transform:
|
||||
- {fileID: 1776076871}
|
||||
- {fileID: 97140292}
|
||||
- {fileID: 978572232}
|
||||
- {fileID: 361052051}
|
||||
m_Father: {fileID: 1798580248}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &1239449674
|
||||
@@ -1930,6 +1978,7 @@ MonoBehaviour:
|
||||
- {fileID: 97140291}
|
||||
- {fileID: 789049883}
|
||||
- {fileID: 978572233}
|
||||
- {fileID: 361052052}
|
||||
--- !u!1 &1890425864
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
@@ -407,10 +407,10 @@ RectTransform:
|
||||
- {fileID: 131698921}
|
||||
m_Father: {fileID: 1731001029}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 313.3512, y: -34.1445}
|
||||
m_SizeDelta: {x: 60, y: 60}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &202036419
|
||||
MonoBehaviour:
|
||||
@@ -1235,10 +1235,10 @@ RectTransform:
|
||||
- {fileID: 549774900}
|
||||
m_Father: {fileID: 1731001029}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 393.3512, y: -34.1445}
|
||||
m_SizeDelta: {x: 60, y: 60}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1053034918
|
||||
MonoBehaviour:
|
||||
@@ -2164,7 +2164,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &1731001029
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
Reference in New Issue
Block a user