0.3.0.11
This commit is contained in:
parent
0f8f398c99
commit
ce32862586
@ -2338,13 +2338,14 @@ RectTransform:
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 347118453}
|
||||
- {fileID: 737939132}
|
||||
m_Father: {fileID: 1049919592}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 100, y: 100}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &186139409
|
||||
MonoBehaviour:
|
||||
@ -3718,6 +3719,81 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 346596724}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &347118452
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 347118453}
|
||||
- component: {fileID: 347118455}
|
||||
- component: {fileID: 347118454}
|
||||
m_Layer: 5
|
||||
m_Name: Image
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 0
|
||||
--- !u!224 &347118453
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 347118452}
|
||||
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: 186139408}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &347118454
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 347118452}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0, g: 0, b: 0, a: 0.78431374}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 0}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!222 &347118455
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 347118452}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &350928419 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 529622739828575346, guid: 981817fdc4897a34bafc0040f15656b9, type: 3}
|
||||
@ -4761,6 +4837,7 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
_goldAnimator: {fileID: 1308258170}
|
||||
_goldText: {fileID: 677143483}
|
||||
_animationTime: 1
|
||||
--- !u!1 &440736213
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -8650,8 +8727,8 @@ MonoBehaviour:
|
||||
m_RequiresOpaqueTextureOption: 2
|
||||
m_CameraType: 0
|
||||
m_Cameras:
|
||||
- {fileID: 1355183327}
|
||||
- {fileID: 1985878519}
|
||||
- {fileID: 1355183327}
|
||||
m_RendererIndex: -1
|
||||
m_VolumeLayerMask:
|
||||
serializedVersion: 2
|
||||
@ -13654,10 +13731,10 @@ MonoBehaviour:
|
||||
m_RendererIndex: -1
|
||||
m_VolumeLayerMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 1
|
||||
m_Bits: 8
|
||||
m_VolumeTrigger: {fileID: 0}
|
||||
m_VolumeFrameworkUpdateModeOption: 2
|
||||
m_RenderPostProcessing: 0
|
||||
m_RenderPostProcessing: 1
|
||||
m_Antialiasing: 0
|
||||
m_AntialiasingQuality: 2
|
||||
m_StopNaN: 0
|
||||
@ -17482,7 +17559,9 @@ MonoBehaviour:
|
||||
_currentPlayerHealth: 0
|
||||
_playerMoveSpeedMultiplier: 0
|
||||
_currentExp: 0
|
||||
_expMultiplier: 0
|
||||
_currentGold: 0
|
||||
_goldMultiplier: 0
|
||||
_currentLiquidAmountA: 0
|
||||
_currentLiquidAmountB: 0
|
||||
_currentLiquidAmountC: 0
|
||||
@ -18512,7 +18591,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &1733369987
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -78,6 +78,7 @@ MonoBehaviour:
|
||||
components:
|
||||
- {fileID: 8563356217564074714}
|
||||
- {fileID: -3848577592826383421}
|
||||
- {fileID: 4404516855583877853}
|
||||
--- !u!114 &1921075280319716275
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 3
|
||||
@ -96,6 +97,52 @@ MonoBehaviour:
|
||||
m_OverrideState: 1
|
||||
m_Value: 0
|
||||
IsActive: 0
|
||||
--- !u!114 &4404516855583877853
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 3
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3}
|
||||
m_Name: DepthOfField
|
||||
m_EditorClassIdentifier:
|
||||
active: 0
|
||||
mode:
|
||||
m_OverrideState: 1
|
||||
m_Value: 1
|
||||
gaussianStart:
|
||||
m_OverrideState: 1
|
||||
m_Value: 0
|
||||
gaussianEnd:
|
||||
m_OverrideState: 1
|
||||
m_Value: 0
|
||||
gaussianMaxRadius:
|
||||
m_OverrideState: 1
|
||||
m_Value: 1.5
|
||||
highQualitySampling:
|
||||
m_OverrideState: 1
|
||||
m_Value: 0
|
||||
focusDistance:
|
||||
m_OverrideState: 1
|
||||
m_Value: 10
|
||||
aperture:
|
||||
m_OverrideState: 1
|
||||
m_Value: 5.6
|
||||
focalLength:
|
||||
m_OverrideState: 1
|
||||
m_Value: 50
|
||||
bladeCount:
|
||||
m_OverrideState: 1
|
||||
m_Value: 5
|
||||
bladeCurvature:
|
||||
m_OverrideState: 1
|
||||
m_Value: 1
|
||||
bladeRotation:
|
||||
m_OverrideState: 1
|
||||
m_Value: 0
|
||||
--- !u!114 &8563356217564074714
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 3
|
||||
|
@ -1,6 +1,10 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using BlueWater.Items;
|
||||
using BlueWater.Tycoons;
|
||||
using UnityEditor.Rendering;
|
||||
using UnityEngine;
|
||||
using Random = UnityEngine.Random;
|
||||
|
||||
|
||||
namespace BlueWater
|
||||
@ -10,6 +14,11 @@ namespace BlueWater
|
||||
public class CardDataSo : DataSo<CardData>
|
||||
{
|
||||
private Dictionary<string, int> _selectedCard = new Dictionary<string, int>(); // 선택된 카드를 저장함. <key = Idx / int = val>
|
||||
|
||||
public CardData GetCardData(string idxKey)
|
||||
{
|
||||
return GetDataByIdx(idxKey);
|
||||
}
|
||||
|
||||
public CardData GetRandCardData()
|
||||
{
|
||||
@ -38,10 +47,47 @@ namespace BlueWater
|
||||
}
|
||||
}
|
||||
|
||||
//(임시) 카드 종류를 탐색해서 치환하는 작업 (리퀴드와 가니쉬에 해당함)
|
||||
//확률적으로 문제가 있기 때문에, 해당 확률를 고려해서 카드를 변경시키는 기능
|
||||
//EX -> 10레벨 상태에서 AddLiquidE 가 나왔을 경우 B, C 둘중 하나로 치환함
|
||||
//만약에 5레벨보다 작으면 null값 리턴
|
||||
public CardData SubstitutionLiquid(CardData cardData, LevelData levelData)
|
||||
{
|
||||
if (cardData.Idx.Equals("AddLiquidB") || cardData.Idx.Equals("AddLiquidC") || cardData.Idx.Equals("AddLiquidD") ||
|
||||
cardData.Idx.Equals("AddLiquidE") || cardData.Idx.Equals("AddGarnish1") || cardData.Idx.Equals("AddGarnish2") || cardData.Idx.Equals("AddAllLiquid"))
|
||||
{
|
||||
int levelIdx = Int32.Parse(levelData.Idx);
|
||||
|
||||
if (levelIdx <= 5)
|
||||
{
|
||||
Debug.Log("<= 5");
|
||||
return null;
|
||||
}
|
||||
else if (cardData.Idx.Equals("AddAllLiquid"))
|
||||
{
|
||||
return cardData;
|
||||
}
|
||||
|
||||
List<CardData> activeLiquid = new List<CardData>();
|
||||
|
||||
if (levelIdx > 5) activeLiquid.Add(GetCardData("AddLiquidB"));
|
||||
if (levelIdx > 10) activeLiquid.Add(GetCardData("AddLiquidC"));
|
||||
if (levelIdx > 15) activeLiquid.Add(GetCardData("AddLiquidD"));
|
||||
if (levelIdx > 20) activeLiquid.Add(GetCardData("AddLiquidE"));
|
||||
if (levelIdx > 25) activeLiquid.Add(GetCardData("AddGarnish1"));
|
||||
if (levelIdx > 30) activeLiquid.Add(GetCardData("AddGarnish2"));
|
||||
|
||||
// 액체 목록에서 랜덤하게 선택하여 반환
|
||||
return activeLiquid[Random.Range(0, activeLiquid.Count)];
|
||||
}
|
||||
return cardData; // 해당 사항이 없으면 치환하지 않음
|
||||
}
|
||||
|
||||
// 카드가 MAX값인지 확인할 때 - MAX값이면 true를 리턴
|
||||
public bool CardMaxCheck(CardData cardData)
|
||||
{
|
||||
return _selectedCard.TryGetValue(cardData.Idx, out var value) && cardData.Max != 0 && value >= cardData.Max;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
@ -80,5 +80,19 @@ namespace BlueWater.Tycoons
|
||||
|
||||
return validCocktails;
|
||||
}
|
||||
|
||||
public List<Barrel> GetActivatedBarrels()
|
||||
{
|
||||
return _barrels.Where(barrel => barrel.IsActivated).ToList();
|
||||
}
|
||||
|
||||
public void AllAddBarrels(int addVal)
|
||||
{
|
||||
var activeBarrels = GetActivatedBarrels();
|
||||
foreach (var VARIABLE in activeBarrels)
|
||||
{
|
||||
VARIABLE.SetCurrentAmount(VARIABLE.CurrentAmount + addVal, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -74,7 +74,6 @@ public class TycoonCard : MonoBehaviour
|
||||
//지정된 IDX값으로 정보값 초기화
|
||||
public void SetCard(string cardIdx)
|
||||
{
|
||||
Debug.Log(cardIdx);
|
||||
CardDataForIdx = TycoonManager.Instance.CardDataSo.GetDataByIdx(cardIdx);
|
||||
|
||||
Transform infoTransform = transform.Find("CardCom/Infomation");
|
||||
|
@ -31,6 +31,8 @@ namespace BlueWater.Uis
|
||||
private TycoonCard _tycoonCard02Componet;
|
||||
private TycoonCard _tycoonCard03Componet;
|
||||
|
||||
private LevelData _lvData;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
EventManager.OnLevelUp += Test;
|
||||
@ -94,18 +96,29 @@ namespace BlueWater.Uis
|
||||
do
|
||||
{
|
||||
card = TycoonManager.Instance.CardDataSo.GetRandCardData();
|
||||
card01Key = card.Idx;
|
||||
} while (TycoonManager.Instance.CardDataSo.CardMaxCheck(card));
|
||||
card = TycoonManager.Instance.CardDataSo.SubstitutionLiquid(card, _lvData);
|
||||
|
||||
if (card != null)
|
||||
{
|
||||
card01Key = card.Idx;
|
||||
}
|
||||
|
||||
} while (card == null || TycoonManager.Instance.CardDataSo.CardMaxCheck(card));
|
||||
_tycoonCard01Componet.SetCard(card01Key);
|
||||
|
||||
|
||||
|
||||
var card02Key = "NULL VAL";
|
||||
do
|
||||
{
|
||||
card = TycoonManager.Instance.CardDataSo.GetRandCardData();
|
||||
card02Key = card.Idx;
|
||||
card = TycoonManager.Instance.CardDataSo.SubstitutionLiquid(card, _lvData);
|
||||
if (card != null)
|
||||
{
|
||||
card02Key = card.Idx;
|
||||
}
|
||||
|
||||
} while (TycoonManager.Instance.CardDataSo.CardMaxCheck(card) || card02Key.Equals(card01Key));
|
||||
} while (card == null || TycoonManager.Instance.CardDataSo.CardMaxCheck(card) || card02Key.Equals(card01Key));
|
||||
_tycoonCard02Componet.SetCard(card02Key);
|
||||
|
||||
|
||||
@ -113,9 +126,14 @@ namespace BlueWater.Uis
|
||||
do
|
||||
{
|
||||
card = TycoonManager.Instance.CardDataSo.GetRandCardData();
|
||||
card03Key = card.Idx;
|
||||
card = TycoonManager.Instance.CardDataSo.SubstitutionLiquid(card, _lvData);
|
||||
|
||||
if (card != null)
|
||||
{
|
||||
card03Key = card.Idx;
|
||||
}
|
||||
|
||||
} while (TycoonManager.Instance.CardDataSo.CardMaxCheck(card) || card03Key.Equals(card01Key) || card03Key.Equals(card02Key));
|
||||
} while (card == null || TycoonManager.Instance.CardDataSo.CardMaxCheck(card) || card03Key.Equals(card01Key) || card03Key.Equals(card02Key));
|
||||
_tycoonCard03Componet.SetCard(card03Key);
|
||||
|
||||
//-------------
|
||||
@ -127,7 +145,8 @@ namespace BlueWater.Uis
|
||||
|
||||
private void Test(LevelData levelData)
|
||||
{
|
||||
if (levelData.Idx == "1") return;
|
||||
_lvData = levelData;
|
||||
if (_lvData.Idx == "1") return;
|
||||
|
||||
CreateCard();
|
||||
}
|
||||
@ -137,9 +156,9 @@ namespace BlueWater.Uis
|
||||
switch (currTycoonCard.CardDataForIdx.Idx) //탐색 후 행동...
|
||||
{
|
||||
case "HeartPlus":
|
||||
TycoonManager.Instance.TycoonStatus.MaxPlayerHealth += 1 ;break;
|
||||
TycoonManager.Instance.TycoonStatus.MaxPlayerHealth += 2 ;break;
|
||||
case "HeartHeal":
|
||||
TycoonManager.Instance.TycoonStatus.CurrentPlayerHealth += 1 ;break;
|
||||
TycoonManager.Instance.TycoonStatus.CurrentPlayerHealth += 2 ;break;
|
||||
case "HeartAllHeal":
|
||||
TycoonManager.Instance.TycoonStatus.CurrentPlayerHealth = TycoonManager.Instance.TycoonStatus.MaxPlayerHealth ;break;
|
||||
case "AddLiquidB":
|
||||
@ -154,9 +173,8 @@ namespace BlueWater.Uis
|
||||
TycoonManager.Instance.TycoonStatus.CurrentGarnishAmount1 += 4000;break;
|
||||
case "AddGarnish2":
|
||||
TycoonManager.Instance.TycoonStatus.CurrentGarnishAmount2 += 4000;break;
|
||||
case "AddAllLiquid":
|
||||
TycoonManager.Instance.TycoonStatus.CurrentGarnishAmount1 += 1000;
|
||||
TycoonManager.Instance.TycoonStatus.CurrentGarnishAmount2 += 1000;break;
|
||||
case "AddAllLiquid":
|
||||
TycoonManager.Instance.TycoonIngredientController.AllAddBarrels(1000); break;
|
||||
// case "ServerNpc": return; break;
|
||||
// case "CleanerNpc": return; break;
|
||||
// case "ChefNpc": return; break;
|
||||
@ -229,7 +247,6 @@ namespace BlueWater.Uis
|
||||
endPosition02 = new Vector2(-1500, startPosition02.y); // 목표 위치(좌측)
|
||||
}
|
||||
|
||||
|
||||
float time = 0.0f; // 타이머 초기화
|
||||
int rotationDirection = Random.Range(0, 2) * 2 - 1; // 결과는 -1 또는 1
|
||||
|
||||
|
@ -10,16 +10,13 @@ namespace BlueWater
|
||||
private float _baseTimeScale = 1f;
|
||||
private float _currentHitStopCoefficient = 1f;
|
||||
|
||||
protected override void OnAwake()
|
||||
private void Start()
|
||||
{
|
||||
base.OnAwake();
|
||||
|
||||
ResetTimeScale();
|
||||
}
|
||||
|
||||
public void SetBaseTimeScale(float value)
|
||||
{
|
||||
print("테스트");
|
||||
_baseTimeScale = value;
|
||||
UpdateTimeScale();
|
||||
}
|
||||
|
135
Assets/04.Materials/Uis/TycoonUiBlur.mat
Normal file
135
Assets/04.Materials/Uis/TycoonUiBlur.mat
Normal file
@ -0,0 +1,135 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &-6318621047611177644
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 11
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
version: 9
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 8
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: TycoonUiBlur
|
||||
m_Shader: {fileID: 4800000, guid: 1920eb1aecf76cb4f999dcbcf4c56b19, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 4
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses:
|
||||
- MOTIONVECTORS
|
||||
m_LockedProperties:
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _BaseMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _BumpMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailAlbedoMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailMask:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailNormalMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _EmissionMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MainTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MetallicGlossMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _OcclusionMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ParallaxMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _SpecGlossMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- unity_Lightmaps:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- unity_LightmapsInd:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- unity_ShadowMasks:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _AddPrecomputedVelocity: 0
|
||||
- _AlphaClip: 0
|
||||
- _AlphaToMask: 0
|
||||
- _Blend: 0
|
||||
- _BlendModePreserveSpecular: 1
|
||||
- _BumpScale: 1
|
||||
- _ClearCoatMask: 0
|
||||
- _ClearCoatSmoothness: 0
|
||||
- _Cull: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DetailAlbedoMapScale: 1
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _DstBlendAlpha: 0
|
||||
- _EnvironmentReflections: 1
|
||||
- _GlossMapScale: 0
|
||||
- _Glossiness: 0
|
||||
- _GlossyReflections: 0
|
||||
- _Metallic: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.005
|
||||
- _QueueOffset: 0
|
||||
- _ReceiveShadows: 1
|
||||
- _Smoothness: 0.5
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _SrcBlendAlpha: 1
|
||||
- _Surface: 0
|
||||
- _WorkflowMode: 1
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
|
||||
m_BuildTextureStacks: []
|
||||
m_AllowLocking: 1
|
8
Assets/04.Materials/Uis/TycoonUiBlur.mat.meta
Normal file
8
Assets/04.Materials/Uis/TycoonUiBlur.mat.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 20a20b860dc12774b93b1acd5685d9f7
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
152
Assets/09.Shaders/TycoonUiBlur.shader
Normal file
152
Assets/09.Shaders/TycoonUiBlur.shader
Normal file
@ -0,0 +1,152 @@
|
||||
Shader "Hidden/TycoonUiBlur"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
_Radius("Radius", Range(1, 255)) = 1
|
||||
}
|
||||
|
||||
Category
|
||||
{
|
||||
Tags{ "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Opaque" }
|
||||
|
||||
SubShader
|
||||
{
|
||||
GrabPass
|
||||
{
|
||||
Tags{ "LightMode" = "Always" }
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Tags{ "LightMode" = "Always" }
|
||||
|
||||
CGPROGRAM
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
#pragma fragmentoption ARB_precision_hint_fastest
|
||||
#include "UnityCG.cginc"
|
||||
|
||||
struct appdata_t
|
||||
{
|
||||
float4 vertex : POSITION;
|
||||
float2 texcoord: TEXCOORD0;
|
||||
};
|
||||
|
||||
struct v2f
|
||||
{
|
||||
float4 vertex : POSITION;
|
||||
float4 uvgrab : TEXCOORD0;
|
||||
};
|
||||
|
||||
v2f vert(appdata_t v)
|
||||
{
|
||||
v2f o;
|
||||
o.vertex = UnityObjectToClipPos(v.vertex);
|
||||
#if UNITY_UV_STARTS_AT_TOP
|
||||
float scale = -1.0;
|
||||
#else
|
||||
float scale = 1.0;
|
||||
#endif
|
||||
o.uvgrab.xy = (float2(o.vertex.x, o.vertex.y*scale) + o.vertex.w) * 0.5;
|
||||
o.uvgrab.zw = o.vertex.zw;
|
||||
return o;
|
||||
}
|
||||
|
||||
sampler2D _GrabTexture;
|
||||
float4 _GrabTexture_TexelSize;
|
||||
float _Radius;
|
||||
|
||||
half4 frag(v2f i) : COLOR
|
||||
{
|
||||
half4 sum = half4(0,0,0,0);
|
||||
|
||||
#define GRABXYPIXEL(kernelx, kernely) tex2Dproj( _GrabTexture, UNITY_PROJ_COORD(float4(i.uvgrab.x + _GrabTexture_TexelSize.x * kernelx, i.uvgrab.y + _GrabTexture_TexelSize.y * kernely, i.uvgrab.z, i.uvgrab.w)))
|
||||
|
||||
sum += GRABXYPIXEL(0.0, 0.0);
|
||||
int measurments = 1;
|
||||
|
||||
for (float range = 0.1f; range <= _Radius; range += 0.1f)
|
||||
{
|
||||
sum += GRABXYPIXEL(range, range);
|
||||
sum += GRABXYPIXEL(range, -range);
|
||||
sum += GRABXYPIXEL(-range, range);
|
||||
sum += GRABXYPIXEL(-range, -range);
|
||||
measurments += 4;
|
||||
}
|
||||
|
||||
return sum / measurments;
|
||||
}
|
||||
ENDCG
|
||||
}
|
||||
GrabPass
|
||||
{
|
||||
Tags{ "LightMode" = "Always" }
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Tags{ "LightMode" = "Always" }
|
||||
|
||||
CGPROGRAM
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
#pragma fragmentoption ARB_precision_hint_fastest
|
||||
#include "UnityCG.cginc"
|
||||
|
||||
struct appdata_t
|
||||
{
|
||||
float4 vertex : POSITION;
|
||||
float2 texcoord: TEXCOORD0;
|
||||
};
|
||||
|
||||
struct v2f
|
||||
{
|
||||
float4 vertex : POSITION;
|
||||
float4 uvgrab : TEXCOORD0;
|
||||
};
|
||||
|
||||
v2f vert(appdata_t v)
|
||||
{
|
||||
v2f o;
|
||||
o.vertex = UnityObjectToClipPos(v.vertex);
|
||||
#if UNITY_UV_STARTS_AT_TOP
|
||||
float scale = -1.0;
|
||||
#else
|
||||
float scale = 1.0;
|
||||
#endif
|
||||
o.uvgrab.xy = (float2(o.vertex.x, o.vertex.y*scale) + o.vertex.w) * 0.5;
|
||||
o.uvgrab.zw = o.vertex.zw;
|
||||
return o;
|
||||
}
|
||||
|
||||
sampler2D _GrabTexture;
|
||||
float4 _GrabTexture_TexelSize;
|
||||
float _Radius;
|
||||
|
||||
half4 frag(v2f i) : COLOR
|
||||
{
|
||||
|
||||
half4 sum = half4(0,0,0,0);
|
||||
float radius = 1.41421356237 * _Radius;
|
||||
|
||||
#define GRABXYPIXEL(kernelx, kernely) tex2Dproj( _GrabTexture, UNITY_PROJ_COORD(float4(i.uvgrab.x + _GrabTexture_TexelSize.x * kernelx, i.uvgrab.y + _GrabTexture_TexelSize.y * kernely, i.uvgrab.z, i.uvgrab.w)))
|
||||
|
||||
sum += GRABXYPIXEL(0.0, 0.0);
|
||||
int measurments = 1;
|
||||
|
||||
for (float range = 1.41421356237f; range <= radius * 1.41; range += 1.41421356237f)
|
||||
{
|
||||
sum += GRABXYPIXEL(range, 0);
|
||||
sum += GRABXYPIXEL(-range, 0);
|
||||
sum += GRABXYPIXEL(0, range);
|
||||
sum += GRABXYPIXEL(0, -range);
|
||||
measurments += 4;
|
||||
}
|
||||
|
||||
return sum / measurments;
|
||||
}
|
||||
ENDCG
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
9
Assets/09.Shaders/TycoonUiBlur.shader.meta
Normal file
9
Assets/09.Shaders/TycoonUiBlur.shader.meta
Normal file
@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1920eb1aecf76cb4f999dcbcf4c56b19
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Loading…
Reference in New Issue
Block a user