Merge branch 'main' of https://www.nakjungit.site/sharedacc520k/WhaleAdventure_VR
This commit is contained in:
Binary file not shown.
Binary file not shown.
BIN
Assets/01_Scenes/blackjack.unity
LFS
BIN
Assets/01_Scenes/blackjack.unity
LFS
Binary file not shown.
@@ -39,6 +39,11 @@ public class CardSpawnTest : MonoBehaviour
|
|||||||
public TMP_Text dealerScoreText;
|
public TMP_Text dealerScoreText;
|
||||||
public TMP_Text resultText;
|
public TMP_Text resultText;
|
||||||
|
|
||||||
|
[Header("Dealer Card UI")]
|
||||||
|
public Image[] dealerCardImages;
|
||||||
|
public Sprite dealerCardBackSprite;
|
||||||
|
public Sprite[] cardSprites;
|
||||||
|
|
||||||
[Header("Win Mark UI")]
|
[Header("Win Mark UI")]
|
||||||
public GameObject[] playerWinMarks;
|
public GameObject[] playerWinMarks;
|
||||||
public GameObject[] dealerWinMarks;
|
public GameObject[] dealerWinMarks;
|
||||||
@@ -57,6 +62,8 @@ public class CardSpawnTest : MonoBehaviour
|
|||||||
private List<string> playerCards = new List<string>();
|
private List<string> playerCards = new List<string>();
|
||||||
private List<string> dealerCards = new List<string>();
|
private List<string> dealerCards = new List<string>();
|
||||||
|
|
||||||
|
private Dictionary<string, Sprite> cardSpriteMap = new Dictionary<string, Sprite>();
|
||||||
|
|
||||||
private int playerHitIndex = 0;
|
private int playerHitIndex = 0;
|
||||||
private int dealerHitIndex = 0;
|
private int dealerHitIndex = 0;
|
||||||
|
|
||||||
@@ -71,11 +78,36 @@ public class CardSpawnTest : MonoBehaviour
|
|||||||
private bool hasMatchStarted = false;
|
private bool hasMatchStarted = false;
|
||||||
private bool isEndingMatch = false;
|
private bool isEndingMatch = false;
|
||||||
|
|
||||||
|
void Awake()
|
||||||
|
{
|
||||||
|
BuildCardSpriteMap();
|
||||||
|
}
|
||||||
|
|
||||||
void Start()
|
void Start()
|
||||||
{
|
{
|
||||||
PrepareBeforeStart();
|
PrepareBeforeStart();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BuildCardSpriteMap()
|
||||||
|
{
|
||||||
|
cardSpriteMap.Clear();
|
||||||
|
|
||||||
|
foreach (Sprite sprite in cardSprites)
|
||||||
|
{
|
||||||
|
if (sprite == null)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
string key = NormalizeCardName(sprite.name);
|
||||||
|
|
||||||
|
if (!cardSpriteMap.ContainsKey(key))
|
||||||
|
{
|
||||||
|
cardSpriteMap.Add(key, sprite);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void PrepareBeforeStart()
|
void PrepareBeforeStart()
|
||||||
{
|
{
|
||||||
ClearSpawnedCards();
|
ClearSpawnedCards();
|
||||||
@@ -96,6 +128,7 @@ void PrepareBeforeStart()
|
|||||||
isEndingMatch = false;
|
isEndingMatch = false;
|
||||||
|
|
||||||
HideAllWinMarks();
|
HideAllWinMarks();
|
||||||
|
HideDealerCardUI();
|
||||||
|
|
||||||
if (resultText != null)
|
if (resultText != null)
|
||||||
{
|
{
|
||||||
@@ -104,12 +137,12 @@ void PrepareBeforeStart()
|
|||||||
|
|
||||||
if (playerScoreText != null)
|
if (playerScoreText != null)
|
||||||
{
|
{
|
||||||
playerScoreText.text = "Player: 0";
|
playerScoreText.text = "플레이어: 0";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dealerScoreText != null)
|
if (dealerScoreText != null)
|
||||||
{
|
{
|
||||||
dealerScoreText.text = "Dealer: ?";
|
dealerScoreText.text = "선장: ?";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hitButton != null)
|
if (hitButton != null)
|
||||||
@@ -122,7 +155,7 @@ void PrepareBeforeStart()
|
|||||||
standButton.interactable = false;
|
standButton.interactable = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Debug.Log("Blackjack ready. Waiting for player seated.");
|
Debug.Log("블랙잭 준비 완료. 플레이어가 앉기를 기다리는 중.");
|
||||||
}
|
}
|
||||||
|
|
||||||
public void StartMatch()
|
public void StartMatch()
|
||||||
@@ -142,12 +175,13 @@ public void StartMatch()
|
|||||||
HideAllWinMarks();
|
HideAllWinMarks();
|
||||||
StartRound();
|
StartRound();
|
||||||
|
|
||||||
Debug.Log("Blackjack Match Start");
|
Debug.Log("블랙잭 승부 시작");
|
||||||
}
|
}
|
||||||
|
|
||||||
void StartRound()
|
void StartRound()
|
||||||
{
|
{
|
||||||
ClearSpawnedCards();
|
ClearSpawnedCards();
|
||||||
|
HideDealerCardUI();
|
||||||
BuildDeck();
|
BuildDeck();
|
||||||
|
|
||||||
isPlayerTurn = true;
|
isPlayerTurn = true;
|
||||||
@@ -182,13 +216,8 @@ void StartRound()
|
|||||||
|
|
||||||
UpdateScoreUI(false);
|
UpdateScoreUI(false);
|
||||||
|
|
||||||
Debug.Log("New Round Start");
|
Debug.Log("새 라운드 시작");
|
||||||
Debug.Log("Player Score: " + CalculateScore(playerCards));
|
Debug.Log("플레이어 점수: " + CalculateScore(playerCards));
|
||||||
|
|
||||||
if (dealerCards.Count > 0)
|
|
||||||
{
|
|
||||||
Debug.Log("Dealer Open Card Score: " + GetCardValue(dealerCards[0]));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void BuildDeck()
|
void BuildDeck()
|
||||||
@@ -203,14 +232,14 @@ void BuildDeck()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Debug.Log("Deck Count: " + deck.Count);
|
Debug.Log("덱 카드 수: " + deck.Count);
|
||||||
}
|
}
|
||||||
|
|
||||||
GameObject DrawRandomCard()
|
GameObject DrawRandomCard()
|
||||||
{
|
{
|
||||||
if (deck.Count == 0)
|
if (deck.Count == 0)
|
||||||
{
|
{
|
||||||
Debug.LogWarning("Deck is empty.");
|
Debug.LogWarning("덱이 비어 있습니다.");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -245,6 +274,10 @@ GameObject DealDealerCard(Transform pos, bool faceDown)
|
|||||||
}
|
}
|
||||||
|
|
||||||
dealerCards.Add(prefab.name);
|
dealerCards.Add(prefab.name);
|
||||||
|
|
||||||
|
int dealerCardIndex = dealerCards.Count - 1;
|
||||||
|
UpdateDealerCardUI(dealerCardIndex, prefab.name, faceDown);
|
||||||
|
|
||||||
return SpawnCard(prefab, pos, faceDown);
|
return SpawnCard(prefab, pos, faceDown);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -257,13 +290,13 @@ public void Hit()
|
|||||||
|
|
||||||
if (!isPlayerTurn)
|
if (!isPlayerTurn)
|
||||||
{
|
{
|
||||||
Debug.Log("You already stood. Hit is disabled.");
|
Debug.Log("이미 멈췄습니다. 카드를 더 받을 수 없습니다.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (playerHitIndex >= playerHitPositions.Length)
|
if (playerHitIndex >= playerHitPositions.Length)
|
||||||
{
|
{
|
||||||
Debug.Log("No more player card positions.");
|
Debug.Log("플레이어 카드 위치가 더 이상 없습니다.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -273,12 +306,12 @@ public void Hit()
|
|||||||
UpdateScoreUI(false);
|
UpdateScoreUI(false);
|
||||||
|
|
||||||
int playerScore = CalculateScore(playerCards);
|
int playerScore = CalculateScore(playerCards);
|
||||||
Debug.Log("Player Score After Hit: " + playerScore);
|
Debug.Log("카드 받은 후 플레이어 점수: " + playerScore);
|
||||||
|
|
||||||
if (playerScore > 21)
|
if (playerScore > 21)
|
||||||
{
|
{
|
||||||
Debug.Log("Player Bust! Dealer wins this round.");
|
Debug.Log("플레이어 버스트! 이번 라운드는 선장 승리.");
|
||||||
EndRound(-1, "Player Bust!\nDealer Wins Round!");
|
EndRound(-1, "버스트!\n선장 승리!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -301,10 +334,11 @@ public void Stand()
|
|||||||
dealerHiddenCard.transform.rotation = Quaternion.Euler(frontRotation);
|
dealerHiddenCard.transform.rotation = Quaternion.Euler(frontRotation);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
RevealDealerCardsUI();
|
||||||
UpdateScoreUI(true);
|
UpdateScoreUI(true);
|
||||||
|
|
||||||
Debug.Log("Stand: Dealer hidden card opened.");
|
Debug.Log("스탠드: 선장의 숨겨진 카드 공개.");
|
||||||
Debug.Log("Dealer Score: " + CalculateScore(dealerCards));
|
Debug.Log("선장 점수: " + CalculateScore(dealerCards));
|
||||||
|
|
||||||
DealerTurn();
|
DealerTurn();
|
||||||
}
|
}
|
||||||
@@ -315,7 +349,7 @@ void DealerTurn()
|
|||||||
{
|
{
|
||||||
if (dealerHitIndex >= dealerHitPositions.Length)
|
if (dealerHitIndex >= dealerHitPositions.Length)
|
||||||
{
|
{
|
||||||
Debug.Log("No more dealer card positions.");
|
Debug.Log("선장 카드 위치가 더 이상 없습니다.");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -324,7 +358,7 @@ void DealerTurn()
|
|||||||
|
|
||||||
UpdateScoreUI(true);
|
UpdateScoreUI(true);
|
||||||
|
|
||||||
Debug.Log("Dealer draws a card. Dealer Score: " + CalculateScore(dealerCards));
|
Debug.Log("선장이 카드를 받았습니다. 선장 점수: " + CalculateScore(dealerCards));
|
||||||
}
|
}
|
||||||
|
|
||||||
JudgeResult();
|
JudgeResult();
|
||||||
@@ -335,24 +369,24 @@ void JudgeResult()
|
|||||||
int playerScore = CalculateScore(playerCards);
|
int playerScore = CalculateScore(playerCards);
|
||||||
int dealerScore = CalculateScore(dealerCards);
|
int dealerScore = CalculateScore(dealerCards);
|
||||||
|
|
||||||
Debug.Log("Final Player Score: " + playerScore);
|
Debug.Log("최종 플레이어 점수: " + playerScore);
|
||||||
Debug.Log("Final Dealer Score: " + dealerScore);
|
Debug.Log("최종 선장 점수: " + dealerScore);
|
||||||
|
|
||||||
if (dealerScore > 21)
|
if (dealerScore > 21)
|
||||||
{
|
{
|
||||||
EndRound(1, "Dealer Bust!\nPlayer Wins Round!");
|
EndRound(1, "선장 버스트!\n플레이어 승리!");
|
||||||
}
|
}
|
||||||
else if (playerScore > dealerScore)
|
else if (playerScore > dealerScore)
|
||||||
{
|
{
|
||||||
EndRound(1, "Player Wins Round!");
|
EndRound(1, "플레이어 승리!");
|
||||||
}
|
}
|
||||||
else if (playerScore < dealerScore)
|
else if (playerScore < dealerScore)
|
||||||
{
|
{
|
||||||
EndRound(-1, "Dealer Wins Round!");
|
EndRound(-1, "선장 승리!");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
EndRound(0, "Draw!\nNo Score");
|
EndRound(0, "무승부!\n승점 없음");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -395,8 +429,8 @@ void EndRound(int winner, string message)
|
|||||||
if (playerWinCount >= targetWinCount)
|
if (playerWinCount >= targetWinCount)
|
||||||
{
|
{
|
||||||
isMatchOver = true;
|
isMatchOver = true;
|
||||||
ShowResult("Final Result\nPlayer Wins!");
|
ShowResult("최종 결과\n플레이어 승리!");
|
||||||
Debug.Log("Final Result: Player Wins!");
|
Debug.Log("최종 결과: 플레이어 승리");
|
||||||
|
|
||||||
StartCoroutine(EndMatchAfterDelay());
|
StartCoroutine(EndMatchAfterDelay());
|
||||||
return;
|
return;
|
||||||
@@ -405,8 +439,8 @@ void EndRound(int winner, string message)
|
|||||||
if (dealerWinCount >= targetWinCount)
|
if (dealerWinCount >= targetWinCount)
|
||||||
{
|
{
|
||||||
isMatchOver = true;
|
isMatchOver = true;
|
||||||
ShowResult("Final Result\nDealer Wins!\nTry Again!");
|
ShowResult("최종 결과\n선장 승리!\n다시 도전!");
|
||||||
Debug.Log("Final Result: Dealer Wins! Restarting match.");
|
Debug.Log("최종 결과: 선장 승리. 승부를 다시 시작합니다.");
|
||||||
|
|
||||||
StartCoroutine(RestartMatchAfterLose());
|
StartCoroutine(RestartMatchAfterLose());
|
||||||
return;
|
return;
|
||||||
@@ -461,7 +495,7 @@ IEnumerator RestartMatchAfterLose()
|
|||||||
HideAllWinMarks();
|
HideAllWinMarks();
|
||||||
StartRound();
|
StartRound();
|
||||||
|
|
||||||
Debug.Log("Blackjack restarted after player lost.");
|
Debug.Log("패배 후 블랙잭을 다시 시작합니다.");
|
||||||
}
|
}
|
||||||
|
|
||||||
void UpdateScoreUI(bool showDealerFullScore)
|
void UpdateScoreUI(bool showDealerFullScore)
|
||||||
@@ -470,18 +504,18 @@ void UpdateScoreUI(bool showDealerFullScore)
|
|||||||
|
|
||||||
if (playerScoreText != null)
|
if (playerScoreText != null)
|
||||||
{
|
{
|
||||||
playerScoreText.text = "Player: " + playerScore;
|
playerScoreText.text = "플레이어: " + playerScore;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dealerScoreText != null)
|
if (dealerScoreText != null)
|
||||||
{
|
{
|
||||||
if (showDealerFullScore)
|
if (showDealerFullScore)
|
||||||
{
|
{
|
||||||
dealerScoreText.text = "Dealer: " + CalculateScore(dealerCards);
|
dealerScoreText.text = "선장: " + CalculateScore(dealerCards);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
dealerScoreText.text = "Dealer: ?";
|
dealerScoreText.text = "선장: ?";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -574,7 +608,7 @@ int GetCardValue(string cardName)
|
|||||||
return int.Parse(match.Value);
|
return int.Parse(match.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
Debug.LogWarning("Card value not found: " + cardName);
|
Debug.LogWarning("카드 값을 찾을 수 없습니다: " + cardName);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -587,7 +621,7 @@ GameObject SpawnCard(GameObject prefab, Transform pos, bool faceDown)
|
|||||||
{
|
{
|
||||||
if (prefab == null || pos == null)
|
if (prefab == null || pos == null)
|
||||||
{
|
{
|
||||||
Debug.LogWarning("Card prefab or position is missing.");
|
Debug.LogWarning("카드 프리팹 또는 위치가 비어 있습니다.");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -607,4 +641,85 @@ GameObject SpawnCard(GameObject prefab, Transform pos, bool faceDown)
|
|||||||
|
|
||||||
return card;
|
return card;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void HideDealerCardUI()
|
||||||
|
{
|
||||||
|
if (dealerCardImages == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (Image image in dealerCardImages)
|
||||||
|
{
|
||||||
|
if (image == null)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
image.sprite = null;
|
||||||
|
image.gameObject.SetActive(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void UpdateDealerCardUI(int index, string cardName, bool faceDown)
|
||||||
|
{
|
||||||
|
if (dealerCardImages == null || index < 0 || index >= dealerCardImages.Length)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Image targetImage = dealerCardImages[index];
|
||||||
|
|
||||||
|
if (targetImage == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
targetImage.gameObject.SetActive(true);
|
||||||
|
|
||||||
|
if (faceDown)
|
||||||
|
{
|
||||||
|
targetImage.sprite = dealerCardBackSprite;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
targetImage.sprite = GetCardSprite(cardName);
|
||||||
|
}
|
||||||
|
|
||||||
|
void RevealDealerCardsUI()
|
||||||
|
{
|
||||||
|
for (int i = 0; i < dealerCards.Count; i++)
|
||||||
|
{
|
||||||
|
UpdateDealerCardUI(i, dealerCards[i], false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Sprite GetCardSprite(string cardName)
|
||||||
|
{
|
||||||
|
string key = NormalizeCardName(cardName);
|
||||||
|
|
||||||
|
if (cardSpriteMap.TryGetValue(key, out Sprite sprite))
|
||||||
|
{
|
||||||
|
return sprite;
|
||||||
|
}
|
||||||
|
|
||||||
|
Debug.LogWarning("카드 UI 이미지를 찾을 수 없습니다: " + cardName);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
string NormalizeCardName(string cardName)
|
||||||
|
{
|
||||||
|
if (string.IsNullOrEmpty(cardName))
|
||||||
|
{
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
return cardName
|
||||||
|
.Replace("(Clone)", "")
|
||||||
|
.Replace(" ", "")
|
||||||
|
.Replace("_", "")
|
||||||
|
.Replace("-", "")
|
||||||
|
.Trim()
|
||||||
|
.ToLower();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
242
Assets/02_Scripts/Cave/ClamBiteDetector.cs
Normal file
242
Assets/02_Scripts/Cave/ClamBiteDetector.cs
Normal file
@@ -0,0 +1,242 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.XR.Interaction.Toolkit.Interactables;
|
||||||
|
|
||||||
|
public class ClamBiteDetector : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Header("References")]
|
||||||
|
[SerializeField] private ClamOpenClose clam;
|
||||||
|
[SerializeField] private RaftHealth health;
|
||||||
|
[SerializeField] private MemoryFragmentReset memoryFragment;
|
||||||
|
|
||||||
|
[Header("Bite Damage")]
|
||||||
|
[SerializeField] private int biteDamage = 20;
|
||||||
|
|
||||||
|
[Header("Bite Zone")]
|
||||||
|
[SerializeField] private Collider biteZoneCollider;
|
||||||
|
|
||||||
|
[Tooltip("조개 미션이 시작되었을 때만 물림 판정을 합니다.")]
|
||||||
|
[SerializeField] private bool missionActiveOnStart = false;
|
||||||
|
|
||||||
|
[Tooltip("조개가 닫히는 동안 이미 한 번 물렸으면 추가 판정을 막습니다.")]
|
||||||
|
[SerializeField] private bool biteOncePerClose = true;
|
||||||
|
|
||||||
|
[Header("Target Detection")]
|
||||||
|
[Tooltip("손 오브젝트에 붙일 태그입니다. 태그를 안 쓰면 XRHandMarker로도 판정합니다.")]
|
||||||
|
[SerializeField] private string handTag = "PlayerHand";
|
||||||
|
|
||||||
|
[Tooltip("기억의 조각 태그입니다. 단, 조각은 잡힌 상태일 때만 물림 대상으로 봅니다.")]
|
||||||
|
[SerializeField] private string fragmentTag = "MemoryFragment";
|
||||||
|
|
||||||
|
[Tooltip("기억의 조각은 플레이어가 잡고 있을 때만 물림 판정합니다.")]
|
||||||
|
[SerializeField] private bool biteFragmentOnlyWhenGrabbed = true;
|
||||||
|
|
||||||
|
[Header("Debug")]
|
||||||
|
[SerializeField] private bool showDebugLog = true;
|
||||||
|
|
||||||
|
private bool missionActive;
|
||||||
|
private bool hasBittenThisClose;
|
||||||
|
|
||||||
|
private readonly HashSet<Collider> collidersInside = new();
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
if (biteZoneCollider == null)
|
||||||
|
biteZoneCollider = GetComponent<Collider>();
|
||||||
|
|
||||||
|
if (biteZoneCollider != null)
|
||||||
|
{
|
||||||
|
biteZoneCollider.isTrigger = true;
|
||||||
|
biteZoneCollider.enabled = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (clam == null)
|
||||||
|
clam = GetComponentInParent<ClamOpenClose>();
|
||||||
|
|
||||||
|
if (health == null)
|
||||||
|
health = FindFirstObjectByType<RaftHealth>();
|
||||||
|
|
||||||
|
if (memoryFragment == null)
|
||||||
|
memoryFragment = FindFirstObjectByType<MemoryFragmentReset>();
|
||||||
|
|
||||||
|
missionActive = missionActiveOnStart;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnEnable()
|
||||||
|
{
|
||||||
|
if (clam != null)
|
||||||
|
{
|
||||||
|
clam.onCloseStarted.AddListener(EnableBiteWindow);
|
||||||
|
clam.onClosed.AddListener(DisableBiteWindow);
|
||||||
|
clam.onOpened.AddListener(ResetBiteState);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDisable()
|
||||||
|
{
|
||||||
|
if (clam != null)
|
||||||
|
{
|
||||||
|
clam.onCloseStarted.RemoveListener(EnableBiteWindow);
|
||||||
|
clam.onClosed.RemoveListener(DisableBiteWindow);
|
||||||
|
clam.onOpened.RemoveListener(ResetBiteState);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnTriggerEnter(Collider other)
|
||||||
|
{
|
||||||
|
collidersInside.Add(other);
|
||||||
|
|
||||||
|
if (IsBiteWindowOpen())
|
||||||
|
TryBite(other);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnTriggerStay(Collider other)
|
||||||
|
{
|
||||||
|
collidersInside.Add(other);
|
||||||
|
|
||||||
|
if (IsBiteWindowOpen())
|
||||||
|
TryBite(other);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnTriggerExit(Collider other)
|
||||||
|
{
|
||||||
|
collidersInside.Remove(other);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void StartBiteMission()
|
||||||
|
{
|
||||||
|
missionActive = true;
|
||||||
|
hasBittenThisClose = false;
|
||||||
|
collidersInside.Clear();
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.Log("[ClamBiteDetector] 조개 미션 시작. 물림 판정 활성 준비.", this);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void StopBiteMission()
|
||||||
|
{
|
||||||
|
missionActive = false;
|
||||||
|
hasBittenThisClose = false;
|
||||||
|
collidersInside.Clear();
|
||||||
|
|
||||||
|
if (biteZoneCollider != null)
|
||||||
|
biteZoneCollider.enabled = false;
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.Log("[ClamBiteDetector] 조개 미션 정지. 물림 판정 비활성.", this);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void EnableBiteWindow()
|
||||||
|
{
|
||||||
|
if (!missionActive)
|
||||||
|
return;
|
||||||
|
|
||||||
|
hasBittenThisClose = false;
|
||||||
|
|
||||||
|
if (biteZoneCollider != null)
|
||||||
|
biteZoneCollider.enabled = true;
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.Log("[ClamBiteDetector] 조개 물림 판정 ON", this);
|
||||||
|
|
||||||
|
foreach (Collider col in collidersInside)
|
||||||
|
{
|
||||||
|
if (col != null)
|
||||||
|
TryBite(col);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void DisableBiteWindow()
|
||||||
|
{
|
||||||
|
if (biteZoneCollider != null)
|
||||||
|
biteZoneCollider.enabled = false;
|
||||||
|
|
||||||
|
collidersInside.Clear();
|
||||||
|
|
||||||
|
if (showDebugLog && missionActive)
|
||||||
|
Debug.Log("[ClamBiteDetector] 조개 물림 판정 OFF", this);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ResetBiteState()
|
||||||
|
{
|
||||||
|
hasBittenThisClose = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool IsBiteWindowOpen()
|
||||||
|
{
|
||||||
|
if (!missionActive)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (biteZoneCollider == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return biteZoneCollider.enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void TryBite(Collider other)
|
||||||
|
{
|
||||||
|
if (other == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (!missionActive)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (biteOncePerClose && hasBittenThisClose)
|
||||||
|
return;
|
||||||
|
|
||||||
|
bool isHand = IsHandCollider(other);
|
||||||
|
bool isGrabbedFragment = IsGrabbedMemoryFragment(other);
|
||||||
|
|
||||||
|
if (!isHand && !isGrabbedFragment)
|
||||||
|
return;
|
||||||
|
|
||||||
|
hasBittenThisClose = true;
|
||||||
|
|
||||||
|
if (health != null)
|
||||||
|
health.TakeDamage(biteDamage);
|
||||||
|
|
||||||
|
if (memoryFragment != null)
|
||||||
|
memoryFragment.ResetFragment();
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
{
|
||||||
|
Debug.Log($"[ClamBiteDetector] 조개에게 물림. 데미지 {biteDamage}, 기억의 조각 리셋", this);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool IsHandCollider(Collider other)
|
||||||
|
{
|
||||||
|
if (other.CompareTag(handTag))
|
||||||
|
return true;
|
||||||
|
|
||||||
|
XRHandMarker marker = other.GetComponentInParent<XRHandMarker>();
|
||||||
|
|
||||||
|
return marker != null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool IsGrabbedMemoryFragment(Collider other)
|
||||||
|
{
|
||||||
|
MemoryFragmentReset fragment = other.GetComponentInParent<MemoryFragmentReset>();
|
||||||
|
|
||||||
|
if (fragment == null)
|
||||||
|
{
|
||||||
|
if (!other.CompareTag(fragmentTag))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
fragment = memoryFragment;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (fragment == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
XRGrabInteractable grab = fragment.GetComponent<XRGrabInteractable>();
|
||||||
|
|
||||||
|
if (grab == null)
|
||||||
|
return !biteFragmentOnlyWhenGrabbed;
|
||||||
|
|
||||||
|
if (biteFragmentOnlyWhenGrabbed)
|
||||||
|
return grab.isSelected;
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/02_Scripts/Cave/ClamBiteDetector.cs.meta
Normal file
2
Assets/02_Scripts/Cave/ClamBiteDetector.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 9fc0bb91f57b5a74392435f20649c3e9
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
using System.Collections;
|
using System.Collections;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using UnityEngine.Events;
|
||||||
|
|
||||||
public class ClamOpenClose : MonoBehaviour
|
public class ClamOpenClose : MonoBehaviour
|
||||||
{
|
{
|
||||||
@@ -22,7 +23,7 @@ public class ClamOpenClose : MonoBehaviour
|
|||||||
[SerializeField] private float maxOpenTime = 2.0f;
|
[SerializeField] private float maxOpenTime = 2.0f;
|
||||||
|
|
||||||
[SerializeField] private float openDuration = 1.5f;
|
[SerializeField] private float openDuration = 1.5f;
|
||||||
[SerializeField] private float closeDuration = 0.18f;
|
[SerializeField] private float closeDuration = 0.2f;
|
||||||
|
|
||||||
[Header("Motion")]
|
[Header("Motion")]
|
||||||
[SerializeField] private AnimationCurve openCurve = AnimationCurve.EaseInOut(0, 0, 1, 1);
|
[SerializeField] private AnimationCurve openCurve = AnimationCurve.EaseInOut(0, 0, 1, 1);
|
||||||
@@ -32,15 +33,20 @@ public class ClamOpenClose : MonoBehaviour
|
|||||||
[SerializeField] private bool useSnapClose = true;
|
[SerializeField] private bool useSnapClose = true;
|
||||||
|
|
||||||
[Tooltip("닫힐 때 살짝 더 닫히는 오버슈트 각도입니다.")]
|
[Tooltip("닫힐 때 살짝 더 닫히는 오버슈트 각도입니다.")]
|
||||||
[SerializeField] private float snapCloseOvershootX = 5f;
|
[SerializeField] private float snapCloseOvershootX = 3f;
|
||||||
|
|
||||||
[Tooltip("쾅 하고 닫힌 뒤 원래 닫힌 위치로 돌아오는 시간입니다.")]
|
[Tooltip("쾅 하고 닫힌 뒤 원래 닫힌 위치로 돌아오는 시간입니다.")]
|
||||||
[SerializeField] private float snapCloseOvershootDuration = 0.06f;
|
[SerializeField] private float snapCloseOvershootDuration = 0.02f;
|
||||||
|
|
||||||
[Header("Start Option")]
|
[Header("Start Option")]
|
||||||
[SerializeField] private bool startAutomatically = true;
|
[SerializeField] private bool startAutomatically = true;
|
||||||
[SerializeField] private bool startOpened = false;
|
[SerializeField] private bool startOpened = false;
|
||||||
|
|
||||||
|
[Header("Events")]
|
||||||
|
public UnityEvent onOpened;
|
||||||
|
public UnityEvent onCloseStarted;
|
||||||
|
public UnityEvent onClosed;
|
||||||
|
|
||||||
private Quaternion upClosedRot;
|
private Quaternion upClosedRot;
|
||||||
private Quaternion downClosedRot;
|
private Quaternion downClosedRot;
|
||||||
|
|
||||||
@@ -49,8 +55,10 @@ public class ClamOpenClose : MonoBehaviour
|
|||||||
|
|
||||||
private Coroutine routine;
|
private Coroutine routine;
|
||||||
private bool isOpen;
|
private bool isOpen;
|
||||||
|
private bool isClosing;
|
||||||
|
|
||||||
public bool IsOpen => isOpen;
|
public bool IsOpen => isOpen;
|
||||||
|
public bool IsClosing => isClosing;
|
||||||
|
|
||||||
private void Awake()
|
private void Awake()
|
||||||
{
|
{
|
||||||
@@ -72,13 +80,11 @@ private void Awake()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 현재 Scene에서 맞춰둔 로컬 회전을 닫힌 상태로 저장
|
|
||||||
upClosedRot = upShell.localRotation;
|
upClosedRot = upShell.localRotation;
|
||||||
|
|
||||||
if (downShell != null)
|
if (downShell != null)
|
||||||
downClosedRot = downShell.localRotation;
|
downClosedRot = downShell.localRotation;
|
||||||
|
|
||||||
// 닫힌 상태 기준으로 X축 회전 추가
|
|
||||||
upOpenedRot = upClosedRot * Quaternion.Euler(upShellOpenX, 0f, 0f);
|
upOpenedRot = upClosedRot * Quaternion.Euler(upShellOpenX, 0f, 0f);
|
||||||
|
|
||||||
if (downShell != null)
|
if (downShell != null)
|
||||||
@@ -120,7 +126,8 @@ private IEnumerator OpenCloseRoutine()
|
|||||||
float closedWait = Random.Range(minClosedTime, maxClosedTime);
|
float closedWait = Random.Range(minClosedTime, maxClosedTime);
|
||||||
yield return new WaitForSeconds(closedWait);
|
yield return new WaitForSeconds(closedWait);
|
||||||
|
|
||||||
// 천천히 열기
|
isClosing = false;
|
||||||
|
|
||||||
yield return MoveShells(
|
yield return MoveShells(
|
||||||
upClosedRot,
|
upClosedRot,
|
||||||
upOpenedRot,
|
upOpenedRot,
|
||||||
@@ -131,11 +138,15 @@ private IEnumerator OpenCloseRoutine()
|
|||||||
);
|
);
|
||||||
|
|
||||||
isOpen = true;
|
isOpen = true;
|
||||||
|
isClosing = false;
|
||||||
|
onOpened?.Invoke();
|
||||||
|
|
||||||
float openWait = Random.Range(minOpenTime, maxOpenTime);
|
float openWait = Random.Range(minOpenTime, maxOpenTime);
|
||||||
yield return new WaitForSeconds(openWait);
|
yield return new WaitForSeconds(openWait);
|
||||||
|
|
||||||
// 빠르게 닫기
|
isClosing = true;
|
||||||
|
onCloseStarted?.Invoke();
|
||||||
|
|
||||||
yield return MoveShells(
|
yield return MoveShells(
|
||||||
upOpenedRot,
|
upOpenedRot,
|
||||||
upClosedRot,
|
upClosedRot,
|
||||||
@@ -147,11 +158,13 @@ private IEnumerator OpenCloseRoutine()
|
|||||||
|
|
||||||
isOpen = false;
|
isOpen = false;
|
||||||
|
|
||||||
// 쾅 닫히는 느낌
|
|
||||||
if (useSnapClose)
|
if (useSnapClose)
|
||||||
{
|
{
|
||||||
yield return SnapCloseEffect();
|
yield return SnapCloseEffect();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
isClosing = false;
|
||||||
|
onClosed?.Invoke();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -197,7 +210,6 @@ private IEnumerator SnapCloseEffect()
|
|||||||
if (downShell != null)
|
if (downShell != null)
|
||||||
downSnapRot = downClosedRot * Quaternion.Euler(-snapCloseOvershootX * 0.3f, 0f, 0f);
|
downSnapRot = downClosedRot * Quaternion.Euler(-snapCloseOvershootX * 0.3f, 0f, 0f);
|
||||||
|
|
||||||
// 살짝 더 닫힘
|
|
||||||
if (upShell != null)
|
if (upShell != null)
|
||||||
upShell.localRotation = upSnapRot;
|
upShell.localRotation = upSnapRot;
|
||||||
|
|
||||||
@@ -206,7 +218,6 @@ private IEnumerator SnapCloseEffect()
|
|||||||
|
|
||||||
yield return new WaitForSeconds(snapCloseOvershootDuration);
|
yield return new WaitForSeconds(snapCloseOvershootDuration);
|
||||||
|
|
||||||
// 원래 닫힌 상태로 복귀
|
|
||||||
if (upShell != null)
|
if (upShell != null)
|
||||||
upShell.localRotation = upClosedRot;
|
upShell.localRotation = upClosedRot;
|
||||||
|
|
||||||
@@ -223,6 +234,7 @@ private void SetClosedImmediately()
|
|||||||
downShell.localRotation = downClosedRot;
|
downShell.localRotation = downClosedRot;
|
||||||
|
|
||||||
isOpen = false;
|
isOpen = false;
|
||||||
|
isClosing = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SetOpenedImmediately()
|
private void SetOpenedImmediately()
|
||||||
@@ -234,5 +246,6 @@ private void SetOpenedImmediately()
|
|||||||
downShell.localRotation = downOpenedRot;
|
downShell.localRotation = downOpenedRot;
|
||||||
|
|
||||||
isOpen = true;
|
isOpen = true;
|
||||||
|
isClosing = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
32
Assets/02_Scripts/Cave/DamageObstacle.cs
Normal file
32
Assets/02_Scripts/Cave/DamageObstacle.cs
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public class DamageObstacle : MonoBehaviour
|
||||||
|
{
|
||||||
|
public enum ObstacleType
|
||||||
|
{
|
||||||
|
Rock,
|
||||||
|
Rhino,
|
||||||
|
ClamBite
|
||||||
|
}
|
||||||
|
|
||||||
|
[Header("Damage")]
|
||||||
|
[SerializeField] private ObstacleType obstacleType = ObstacleType.Rock;
|
||||||
|
[SerializeField] private int damage = 10;
|
||||||
|
|
||||||
|
[Header("Options")]
|
||||||
|
[SerializeField] private bool canDamage = true;
|
||||||
|
|
||||||
|
public ObstacleType Type => obstacleType;
|
||||||
|
public int Damage => damage;
|
||||||
|
public bool CanDamage => canDamage;
|
||||||
|
|
||||||
|
public void SetCanDamage(bool value)
|
||||||
|
{
|
||||||
|
canDamage = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SetDamage(int value)
|
||||||
|
{
|
||||||
|
damage = Mathf.Max(0, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/02_Scripts/Cave/DamageObstacle.cs.meta
Normal file
2
Assets/02_Scripts/Cave/DamageObstacle.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 310877c91d22e1142b0ea9977b24d3dc
|
||||||
85
Assets/02_Scripts/Cave/MemoryFragmentReset.cs
Normal file
85
Assets/02_Scripts/Cave/MemoryFragmentReset.cs
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.XR.Interaction.Toolkit.Interactables;
|
||||||
|
|
||||||
|
public class MemoryFragmentReset : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Header("References")]
|
||||||
|
[SerializeField] private XRGrabInteractable grabInteractable;
|
||||||
|
[SerializeField] private Rigidbody rb;
|
||||||
|
|
||||||
|
[Header("Reset")]
|
||||||
|
[SerializeField] private Transform resetPoint;
|
||||||
|
|
||||||
|
[Tooltip("리셋 후 다시 잡을 수 있게 되기까지의 시간")]
|
||||||
|
[SerializeField] private float reEnableDelay = 0.15f;
|
||||||
|
|
||||||
|
[Header("Debug")]
|
||||||
|
[SerializeField] private bool showDebugLog = true;
|
||||||
|
|
||||||
|
private Vector3 startPosition;
|
||||||
|
private Quaternion startRotation;
|
||||||
|
private Transform startParent;
|
||||||
|
|
||||||
|
private Coroutine resetRoutine;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
if (grabInteractable == null)
|
||||||
|
grabInteractable = GetComponent<XRGrabInteractable>();
|
||||||
|
|
||||||
|
if (rb == null)
|
||||||
|
rb = GetComponent<Rigidbody>();
|
||||||
|
|
||||||
|
startPosition = transform.position;
|
||||||
|
startRotation = transform.rotation;
|
||||||
|
startParent = transform.parent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ResetFragment()
|
||||||
|
{
|
||||||
|
if (resetRoutine != null)
|
||||||
|
StopCoroutine(resetRoutine);
|
||||||
|
|
||||||
|
resetRoutine = StartCoroutine(ResetRoutine());
|
||||||
|
}
|
||||||
|
|
||||||
|
private IEnumerator ResetRoutine()
|
||||||
|
{
|
||||||
|
if (grabInteractable != null)
|
||||||
|
grabInteractable.enabled = false;
|
||||||
|
|
||||||
|
if (rb != null)
|
||||||
|
{
|
||||||
|
rb.linearVelocity = Vector3.zero;
|
||||||
|
rb.angularVelocity = Vector3.zero;
|
||||||
|
rb.isKinematic = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
transform.SetParent(startParent, true);
|
||||||
|
|
||||||
|
if (resetPoint != null)
|
||||||
|
{
|
||||||
|
transform.position = resetPoint.position;
|
||||||
|
transform.rotation = resetPoint.rotation;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
transform.position = startPosition;
|
||||||
|
transform.rotation = startRotation;
|
||||||
|
}
|
||||||
|
|
||||||
|
yield return new WaitForSeconds(reEnableDelay);
|
||||||
|
|
||||||
|
if (rb != null)
|
||||||
|
rb.isKinematic = false;
|
||||||
|
|
||||||
|
if (grabInteractable != null)
|
||||||
|
grabInteractable.enabled = true;
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.Log("[MemoryFragmentReset] 기억의 조각을 원래 위치로 되돌렸습니다.", this);
|
||||||
|
|
||||||
|
resetRoutine = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/02_Scripts/Cave/MemoryFragmentReset.cs.meta
Normal file
2
Assets/02_Scripts/Cave/MemoryFragmentReset.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 7c8bb23fa35921f41b4e864bd95c0c77
|
||||||
156
Assets/02_Scripts/Cave/RaftDamageReceiver.cs
Normal file
156
Assets/02_Scripts/Cave/RaftDamageReceiver.cs
Normal file
@@ -0,0 +1,156 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.XR;
|
||||||
|
|
||||||
|
public class RaftDamageReceiver : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Header("References")]
|
||||||
|
[SerializeField] private RaftHealth raftHealth;
|
||||||
|
|
||||||
|
[Header("Damage Cooldown")]
|
||||||
|
[SerializeField] private float sameObstacleDamageCooldown = 1.0f;
|
||||||
|
[SerializeField] private float globalDamageCooldown = 0.2f;
|
||||||
|
|
||||||
|
[Header("Haptic Feedback")]
|
||||||
|
[SerializeField] private bool useHapticFeedback = true;
|
||||||
|
|
||||||
|
[Range(0f, 1f)]
|
||||||
|
[SerializeField] private float hapticAmplitude = 0.6f;
|
||||||
|
|
||||||
|
[SerializeField] private float hapticDuration = 0.15f;
|
||||||
|
|
||||||
|
[Tooltip("체력 데미지 수치에 따라 햅틱 세기를 살짝 키웁니다.")]
|
||||||
|
[SerializeField] private bool scaleHapticByDamage = true;
|
||||||
|
|
||||||
|
[Header("Debug")]
|
||||||
|
[SerializeField] private bool showDebugLog = true;
|
||||||
|
|
||||||
|
private readonly Dictionary<DamageObstacle, float> lastDamageTimeByObstacle = new();
|
||||||
|
private float lastGlobalDamageTime = -999f;
|
||||||
|
|
||||||
|
private readonly List<InputDevice> hapticDevices = new();
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
if (raftHealth == null)
|
||||||
|
{
|
||||||
|
raftHealth = GetComponentInParent<RaftHealth>();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (raftHealth == null)
|
||||||
|
{
|
||||||
|
raftHealth = FindFirstObjectByType<RaftHealth>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnTriggerEnter(Collider other)
|
||||||
|
{
|
||||||
|
TryDamage(other);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnTriggerStay(Collider other)
|
||||||
|
{
|
||||||
|
TryDamage(other);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void TryDamage(Collider other)
|
||||||
|
{
|
||||||
|
if (raftHealth == null)
|
||||||
|
{
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.LogWarning("[RaftDamageReceiver] RaftHealth가 연결되지 않았습니다.", this);
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
DamageObstacle obstacle = other.GetComponentInParent<DamageObstacle>();
|
||||||
|
|
||||||
|
if (obstacle == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (!obstacle.CanDamage)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (raftHealth.IsDead)
|
||||||
|
return;
|
||||||
|
|
||||||
|
float now = Time.time;
|
||||||
|
|
||||||
|
if (now < lastGlobalDamageTime + globalDamageCooldown)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (lastDamageTimeByObstacle.TryGetValue(obstacle, out float lastObstacleTime))
|
||||||
|
{
|
||||||
|
if (now < lastObstacleTime + sameObstacleDamageCooldown)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
int damage = obstacle.Damage;
|
||||||
|
|
||||||
|
if (damage <= 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
raftHealth.TakeDamage(damage);
|
||||||
|
|
||||||
|
lastGlobalDamageTime = now;
|
||||||
|
lastDamageTimeByObstacle[obstacle] = now;
|
||||||
|
|
||||||
|
PlayHaptic(damage);
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
{
|
||||||
|
Debug.Log($"[RaftDamageReceiver] {obstacle.name} 충돌. 데미지: {damage}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void PlayHaptic(int damage)
|
||||||
|
{
|
||||||
|
if (!useHapticFeedback)
|
||||||
|
return;
|
||||||
|
|
||||||
|
float amplitude = hapticAmplitude;
|
||||||
|
|
||||||
|
if (scaleHapticByDamage)
|
||||||
|
{
|
||||||
|
// 10 데미지 = 기본값, 15 이상 = 조금 더 강하게
|
||||||
|
float damageScale = Mathf.Clamp(damage / 10f, 1f, 1.5f);
|
||||||
|
amplitude *= damageScale;
|
||||||
|
}
|
||||||
|
|
||||||
|
amplitude = Mathf.Clamp01(amplitude);
|
||||||
|
|
||||||
|
SendHapticToDevice(XRNode.LeftHand, amplitude, hapticDuration);
|
||||||
|
SendHapticToDevice(XRNode.RightHand, amplitude, hapticDuration);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SendHapticToDevice(XRNode node, float amplitude, float duration)
|
||||||
|
{
|
||||||
|
InputDevice device = InputDevices.GetDeviceAtXRNode(node);
|
||||||
|
|
||||||
|
if (!device.isValid)
|
||||||
|
{
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.Log($"[RaftDamageReceiver] {node} 컨트롤러를 찾지 못했습니다.");
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!device.TryGetHapticCapabilities(out HapticCapabilities capabilities))
|
||||||
|
{
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.Log($"[RaftDamageReceiver] {node} 햅틱 기능을 확인할 수 없습니다.");
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!capabilities.supportsImpulse)
|
||||||
|
{
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.Log($"[RaftDamageReceiver] {node} 컨트롤러가 impulse 햅틱을 지원하지 않습니다.");
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
device.SendHapticImpulse(0u, amplitude, duration);
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/02_Scripts/Cave/RaftDamageReceiver.cs.meta
Normal file
2
Assets/02_Scripts/Cave/RaftDamageReceiver.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 4d64021aa9910eb4bb87691a2cdc6697
|
||||||
82
Assets/02_Scripts/Cave/RaftHealth.cs
Normal file
82
Assets/02_Scripts/Cave/RaftHealth.cs
Normal file
@@ -0,0 +1,82 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.Events;
|
||||||
|
|
||||||
|
public class RaftHealth : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Header("Health")]
|
||||||
|
[SerializeField] private int maxHealth = 100;
|
||||||
|
[SerializeField] private int currentHealth = 100;
|
||||||
|
|
||||||
|
[Header("Options")]
|
||||||
|
[SerializeField] private bool resetHealthOnStart = true;
|
||||||
|
|
||||||
|
[Header("Events")]
|
||||||
|
public UnityEvent<int, int> onHealthChanged;
|
||||||
|
public UnityEvent onDead;
|
||||||
|
|
||||||
|
public int MaxHealth => maxHealth;
|
||||||
|
public int CurrentHealth => currentHealth;
|
||||||
|
public bool IsDead => currentHealth <= 0;
|
||||||
|
|
||||||
|
private void Start()
|
||||||
|
{
|
||||||
|
if (resetHealthOnStart)
|
||||||
|
{
|
||||||
|
ResetHealth();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ResetHealth()
|
||||||
|
{
|
||||||
|
currentHealth = maxHealth;
|
||||||
|
currentHealth = Mathf.Clamp(currentHealth, 0, maxHealth);
|
||||||
|
|
||||||
|
Debug.Log($"[RaftHealth] 체력 초기화: {currentHealth}/{maxHealth}");
|
||||||
|
|
||||||
|
onHealthChanged?.Invoke(currentHealth, maxHealth);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void TakeDamage(int damage)
|
||||||
|
{
|
||||||
|
if (damage <= 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (IsDead)
|
||||||
|
return;
|
||||||
|
|
||||||
|
currentHealth -= damage;
|
||||||
|
currentHealth = Mathf.Clamp(currentHealth, 0, maxHealth);
|
||||||
|
|
||||||
|
Debug.Log($"[RaftHealth] 데미지 {damage} 받음. 현재 체력: {currentHealth}/{maxHealth}");
|
||||||
|
|
||||||
|
onHealthChanged?.Invoke(currentHealth, maxHealth);
|
||||||
|
|
||||||
|
if (currentHealth <= 0)
|
||||||
|
{
|
||||||
|
Die();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Heal(int amount)
|
||||||
|
{
|
||||||
|
if (amount <= 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (IsDead)
|
||||||
|
return;
|
||||||
|
|
||||||
|
currentHealth += amount;
|
||||||
|
currentHealth = Mathf.Clamp(currentHealth, 0, maxHealth);
|
||||||
|
|
||||||
|
Debug.Log($"[RaftHealth] 회복 {amount}. 현재 체력: {currentHealth}/{maxHealth}");
|
||||||
|
|
||||||
|
onHealthChanged?.Invoke(currentHealth, maxHealth);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Die()
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftHealth] 체력이 0이 되었습니다. 뗏목 실패 처리.");
|
||||||
|
|
||||||
|
onDead?.Invoke();
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/02_Scripts/Cave/RaftHealth.cs.meta
Normal file
2
Assets/02_Scripts/Cave/RaftHealth.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a21b5472b91813b44bf392e78726081a
|
||||||
77
Assets/02_Scripts/Cave/RaftHealthUI.cs
Normal file
77
Assets/02_Scripts/Cave/RaftHealthUI.cs
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
using TMPro;
|
||||||
|
|
||||||
|
public class RaftHealthUI : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Header("References")]
|
||||||
|
[SerializeField] private RaftHealth raftHealth;
|
||||||
|
[SerializeField] private Image hpFillImage;
|
||||||
|
[SerializeField] private TMP_Text hpText;
|
||||||
|
|
||||||
|
[Header("Text")]
|
||||||
|
[SerializeField] private string hpPrefix = "HP";
|
||||||
|
|
||||||
|
[Header("Options")]
|
||||||
|
[SerializeField] private bool autoFindHealth = true;
|
||||||
|
[SerializeField] private bool hideWhenNoHealth = false;
|
||||||
|
|
||||||
|
[Header("Debug")]
|
||||||
|
[SerializeField] private bool showDebugLog = true;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
if (autoFindHealth && raftHealth == null)
|
||||||
|
{
|
||||||
|
raftHealth = FindFirstObjectByType<RaftHealth>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnEnable()
|
||||||
|
{
|
||||||
|
if (raftHealth != null)
|
||||||
|
{
|
||||||
|
raftHealth.onHealthChanged.AddListener(UpdateHealthUI);
|
||||||
|
UpdateHealthUI(raftHealth.CurrentHealth, raftHealth.MaxHealth);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (hideWhenNoHealth)
|
||||||
|
gameObject.SetActive(false);
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.LogWarning("[RaftHealthUI] RaftHealth가 연결되지 않았습니다.", this);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDisable()
|
||||||
|
{
|
||||||
|
if (raftHealth != null)
|
||||||
|
{
|
||||||
|
raftHealth.onHealthChanged.RemoveListener(UpdateHealthUI);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void UpdateHealthUI(int currentHealth, int maxHealth)
|
||||||
|
{
|
||||||
|
if (maxHealth <= 0)
|
||||||
|
maxHealth = 1;
|
||||||
|
|
||||||
|
float ratio = Mathf.Clamp01((float)currentHealth / maxHealth);
|
||||||
|
|
||||||
|
if (hpFillImage != null)
|
||||||
|
{
|
||||||
|
hpFillImage.fillAmount = ratio;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hpText != null)
|
||||||
|
{
|
||||||
|
hpText.text = $"{currentHealth} / {maxHealth}";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
{
|
||||||
|
Debug.Log($"[RaftHealthUI] 체력 UI 갱신: {currentHealth}/{maxHealth}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/02_Scripts/Cave/RaftHealthUI.cs.meta
Normal file
2
Assets/02_Scripts/Cave/RaftHealthUI.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 33f1269210c01984da23f85d35082e80
|
||||||
97
Assets/02_Scripts/Cave/RaftRestartManager.cs
Normal file
97
Assets/02_Scripts/Cave/RaftRestartManager.cs
Normal file
@@ -0,0 +1,97 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.SceneManagement;
|
||||||
|
|
||||||
|
public class RaftRestartManager : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Header("References")]
|
||||||
|
[SerializeField] private RaftHealth raftHealth;
|
||||||
|
|
||||||
|
[Header("Restart")]
|
||||||
|
[SerializeField] private bool restartAutomatically = false;
|
||||||
|
[SerializeField] private float autoRestartDelay = 2.0f;
|
||||||
|
|
||||||
|
[Tooltip("키보드 테스트용입니다. VR 버튼 리스타트는 나중에 연결해도 됩니다.")]
|
||||||
|
[SerializeField] private KeyCode restartKey = KeyCode.R;
|
||||||
|
|
||||||
|
[Header("Debug")]
|
||||||
|
[SerializeField] private bool showDebugLog = true;
|
||||||
|
|
||||||
|
private bool waitingForRestart;
|
||||||
|
private Coroutine restartRoutine;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
if (raftHealth == null)
|
||||||
|
raftHealth = FindFirstObjectByType<RaftHealth>();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnEnable()
|
||||||
|
{
|
||||||
|
if (raftHealth != null)
|
||||||
|
{
|
||||||
|
raftHealth.onDead.AddListener(OnRaftDead);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDisable()
|
||||||
|
{
|
||||||
|
if (raftHealth != null)
|
||||||
|
{
|
||||||
|
raftHealth.onDead.RemoveListener(OnRaftDead);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Update()
|
||||||
|
{
|
||||||
|
if (!waitingForRestart)
|
||||||
|
return;
|
||||||
|
|
||||||
|
#if ENABLE_LEGACY_INPUT_MANAGER
|
||||||
|
if (Input.GetKeyDown(restartKey))
|
||||||
|
{
|
||||||
|
RestartNow();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnRaftDead()
|
||||||
|
{
|
||||||
|
if (waitingForRestart)
|
||||||
|
return;
|
||||||
|
|
||||||
|
waitingForRestart = true;
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftRestartManager] 체력 0. 리스타트 대기 상태입니다. R 키 또는 RestartNow 호출로 재시작합니다.");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (restartAutomatically)
|
||||||
|
{
|
||||||
|
if (restartRoutine != null)
|
||||||
|
StopCoroutine(restartRoutine);
|
||||||
|
|
||||||
|
restartRoutine = StartCoroutine(AutoRestartRoutine());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private IEnumerator AutoRestartRoutine()
|
||||||
|
{
|
||||||
|
yield return new WaitForSeconds(autoRestartDelay);
|
||||||
|
RestartNow();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RestartNow()
|
||||||
|
{
|
||||||
|
if (showDebugLog)
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftRestartManager] 현재 씬을 다시 시작합니다.");
|
||||||
|
}
|
||||||
|
|
||||||
|
Time.timeScale = 1f;
|
||||||
|
|
||||||
|
Scene currentScene = SceneManager.GetActiveScene();
|
||||||
|
SceneManager.LoadScene(currentScene.buildIndex);
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/02_Scripts/Cave/RaftRestartManager.cs.meta
Normal file
2
Assets/02_Scripts/Cave/RaftRestartManager.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 68a1b671a1769224bba0e6f62386a131
|
||||||
@@ -16,6 +16,10 @@ public class RaftRiverController : MonoBehaviour
|
|||||||
[SerializeField] private float forwardSpeed = 5f;
|
[SerializeField] private float forwardSpeed = 5f;
|
||||||
[SerializeField] private float turnSpeed = 4f;
|
[SerializeField] private float turnSpeed = 4f;
|
||||||
|
|
||||||
|
[Header("Start Speed Control")]
|
||||||
|
[Tooltip("0이면 정지, 1이면 정상 속도입니다. 시작 가속용으로 사용합니다.")]
|
||||||
|
[SerializeField] private float speedMultiplier = 1f;
|
||||||
|
|
||||||
[Header("Side Control")]
|
[Header("Side Control")]
|
||||||
[SerializeField] private float sideMoveSpeed = 16f;
|
[SerializeField] private float sideMoveSpeed = 16f;
|
||||||
[SerializeField] private float sideAcceleration = 40f;
|
[SerializeField] private float sideAcceleration = 40f;
|
||||||
@@ -25,8 +29,10 @@ public class RaftRiverController : MonoBehaviour
|
|||||||
|
|
||||||
[Header("Path Follow Feel")]
|
[Header("Path Follow Feel")]
|
||||||
[SerializeField] private float pathFollowSmoothTime = 0.28f;
|
[SerializeField] private float pathFollowSmoothTime = 0.28f;
|
||||||
|
|
||||||
[Range(0f, 1f)]
|
[Range(0f, 1f)]
|
||||||
[SerializeField] private float rotationVelocityBlend = 0.45f;
|
[SerializeField] private float rotationVelocityBlend = 0.45f;
|
||||||
|
|
||||||
[SerializeField] private float steeringYawAngle = 18f;
|
[SerializeField] private float steeringYawAngle = 18f;
|
||||||
|
|
||||||
[Header("Manual Steering")]
|
[Header("Manual Steering")]
|
||||||
@@ -38,10 +44,27 @@ public class RaftRiverController : MonoBehaviour
|
|||||||
[SerializeField] private float arrivalSlowDownDistance = 12f;
|
[SerializeField] private float arrivalSlowDownDistance = 12f;
|
||||||
[SerializeField] private float arrivalMinSpeed = 0.8f;
|
[SerializeField] private float arrivalMinSpeed = 0.8f;
|
||||||
|
|
||||||
|
[Header("Final Stop Guard")]
|
||||||
|
[Tooltip("마지막 포인트에 가까워지면 거리 판정으로 도착 처리합니다.")]
|
||||||
|
[SerializeField] private float finalPointReachDistance = 3.0f;
|
||||||
|
|
||||||
|
[Tooltip("마지막 포인트 근처 몇 미터 안에서 지나침 감지를 할지 설정합니다.")]
|
||||||
|
[SerializeField] private float finalStopGuardDistance = 20f;
|
||||||
|
|
||||||
|
[Tooltip("목표점과의 X/Z 차이가 이 값 이상 다시 커지면 지나친 것으로 판단합니다.")]
|
||||||
|
[SerializeField] private float finalStopGuardAxisEpsilon = 0.05f;
|
||||||
|
|
||||||
|
[Tooltip("마지막 구간 방향 기준, 마지막 포인트를 넘어가면 즉시 도착 처리합니다.")]
|
||||||
|
[SerializeField] private bool stopWhenPassedFinalPlane = true;
|
||||||
|
|
||||||
|
[Tooltip("도착 처리 시 마지막 포인트 위치로 뗏목을 스냅할지 여부입니다.")]
|
||||||
|
[SerializeField] private bool snapToFinalPointOnArrive = true;
|
||||||
|
|
||||||
[Header("Events")]
|
[Header("Events")]
|
||||||
public UnityEvent onArrived;
|
public UnityEvent onArrived;
|
||||||
|
|
||||||
private int currentPointIndex = 0;
|
private int currentPointIndex = 0;
|
||||||
|
|
||||||
private float sideOffset = 0f;
|
private float sideOffset = 0f;
|
||||||
private float sideVelocity = 0f;
|
private float sideVelocity = 0f;
|
||||||
private float currentSteeringInput = 0f;
|
private float currentSteeringInput = 0f;
|
||||||
@@ -53,6 +76,9 @@ public class RaftRiverController : MonoBehaviour
|
|||||||
private Vector3 previousPosition;
|
private Vector3 previousPosition;
|
||||||
private Vector3 startCenterPosition;
|
private Vector3 startCenterPosition;
|
||||||
|
|
||||||
|
private Vector3 previousFinalDelta;
|
||||||
|
private bool hasPreviousFinalDelta;
|
||||||
|
|
||||||
private bool isFinished = false;
|
private bool isFinished = false;
|
||||||
private bool warnedMissingSteeringKey;
|
private bool warnedMissingSteeringKey;
|
||||||
|
|
||||||
@@ -76,10 +102,21 @@ private void Start()
|
|||||||
|
|
||||||
currentCenterPosition = transform.position;
|
currentCenterPosition = transform.position;
|
||||||
startCenterPosition = currentCenterPosition;
|
startCenterPosition = currentCenterPosition;
|
||||||
|
|
||||||
currentForward = transform.forward;
|
currentForward = transform.forward;
|
||||||
currentRight = transform.right;
|
currentForward.y = 0f;
|
||||||
|
|
||||||
|
if (currentForward.sqrMagnitude < 0.001f)
|
||||||
|
currentForward = Vector3.forward;
|
||||||
|
|
||||||
|
currentForward.Normalize();
|
||||||
|
|
||||||
|
currentRight = Vector3.Cross(Vector3.up, currentForward).normalized;
|
||||||
|
|
||||||
previousPosition = transform.position;
|
previousPosition = transform.position;
|
||||||
currentPointIndex = 0;
|
currentPointIndex = 0;
|
||||||
|
|
||||||
|
ResetFinalStopGuard();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Update()
|
private void Update()
|
||||||
@@ -88,24 +125,35 @@ private void Update()
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
HandleSideControl();
|
HandleSideControl();
|
||||||
MoveAlongPath();
|
|
||||||
|
bool arrived = MoveAlongPath();
|
||||||
|
|
||||||
|
if (arrived)
|
||||||
|
return;
|
||||||
|
|
||||||
ApplyRaftPositionAndRotation();
|
ApplyRaftPositionAndRotation();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void MoveAlongPath()
|
private bool MoveAlongPath()
|
||||||
{
|
{
|
||||||
SkipMissingPathPoints();
|
SkipMissingPathPoints();
|
||||||
|
|
||||||
int lastPointIndex = GetLastValidPathPointIndex();
|
int lastPointIndex = GetLastValidPathPointIndex();
|
||||||
|
|
||||||
if (lastPointIndex < 0 || currentPointIndex >= pathPoints.Length)
|
if (lastPointIndex < 0 || currentPointIndex >= pathPoints.Length)
|
||||||
{
|
{
|
||||||
FinishRaftRide();
|
FinishRaftRide();
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
Transform targetPoint = pathPoints[currentPointIndex];
|
Transform targetPoint = pathPoints[currentPointIndex];
|
||||||
|
|
||||||
|
if (targetPoint == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
Vector3 toTarget = GetFlatVectorTo(targetPoint.position);
|
Vector3 toTarget = GetFlatVectorTo(targetPoint.position);
|
||||||
float distance = toTarget.magnitude;
|
float distance = toTarget.magnitude;
|
||||||
|
|
||||||
bool isLastTarget = currentPointIndex == lastPointIndex;
|
bool isLastTarget = currentPointIndex == lastPointIndex;
|
||||||
|
|
||||||
while (!isLastTarget && ShouldAdvancePathPoint(currentPointIndex, distance))
|
while (!isLastTarget && ShouldAdvancePathPoint(currentPointIndex, distance))
|
||||||
@@ -115,46 +163,56 @@ private void MoveAlongPath()
|
|||||||
|
|
||||||
if (currentPointIndex >= pathPoints.Length)
|
if (currentPointIndex >= pathPoints.Length)
|
||||||
{
|
{
|
||||||
SnapToPathPoint(targetPoint);
|
FinishAtFinalPoint();
|
||||||
FinishRaftRide();
|
return true;
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
targetPoint = pathPoints[currentPointIndex];
|
targetPoint = pathPoints[currentPointIndex];
|
||||||
|
|
||||||
|
if (targetPoint == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
toTarget = GetFlatVectorTo(targetPoint.position);
|
toTarget = GetFlatVectorTo(targetPoint.position);
|
||||||
distance = toTarget.magnitude;
|
distance = toTarget.magnitude;
|
||||||
isLastTarget = currentPointIndex == lastPointIndex;
|
isLastTarget = currentPointIndex == lastPointIndex;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isLastTarget && distance <= pointReachDistance)
|
if (isLastTarget && IsCloseEnoughToFinalPoint(distance))
|
||||||
{
|
{
|
||||||
SnapToPathPoint(targetPoint);
|
FinishAtFinalPoint();
|
||||||
FinishRaftRide();
|
return true;
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (toTarget.sqrMagnitude < 0.001f)
|
if (toTarget.sqrMagnitude < 0.001f)
|
||||||
return;
|
return false;
|
||||||
|
|
||||||
Vector3 pathForward = toTarget.normalized;
|
Vector3 pathForward = toTarget.normalized;
|
||||||
currentForward = GetTravelForward(pathForward);
|
currentForward = GetTravelForward(pathForward);
|
||||||
|
|
||||||
float currentSpeed = GetCurrentForwardSpeed(distance);
|
float currentSpeed = GetCurrentForwardSpeed(distance);
|
||||||
float moveDistance = currentSpeed * Time.deltaTime;
|
float moveDistance = currentSpeed * Time.deltaTime;
|
||||||
|
|
||||||
if (isLastTarget && moveDistance >= distance)
|
if (isLastTarget && moveDistance >= distance)
|
||||||
{
|
{
|
||||||
SnapToPathPoint(targetPoint);
|
FinishAtFinalPoint();
|
||||||
FinishRaftRide();
|
return true;
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
currentCenterPosition += currentForward * moveDistance;
|
currentCenterPosition += currentForward * moveDistance;
|
||||||
currentRight = Vector3.Cross(Vector3.up, currentForward).normalized;
|
|
||||||
|
if (currentForward.sqrMagnitude > 0.001f)
|
||||||
|
currentRight = Vector3.Cross(Vector3.up, currentForward).normalized;
|
||||||
|
|
||||||
|
if (TryFinishAtFinalPointByGuards())
|
||||||
|
return true;
|
||||||
|
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void HandleSideControl()
|
private void HandleSideControl()
|
||||||
{
|
{
|
||||||
float input = 0f;
|
float input = 0f;
|
||||||
|
|
||||||
ResolveSteeringKey();
|
ResolveSteeringKey();
|
||||||
|
|
||||||
if (steeringKey != null)
|
if (steeringKey != null)
|
||||||
@@ -178,6 +236,7 @@ private void HandleSideControl()
|
|||||||
currentSteeringInput = input;
|
currentSteeringInput = input;
|
||||||
|
|
||||||
float targetSideVelocity = input * sideMoveSpeed;
|
float targetSideVelocity = input * sideMoveSpeed;
|
||||||
|
|
||||||
sideVelocity = Mathf.MoveTowards(
|
sideVelocity = Mathf.MoveTowards(
|
||||||
sideVelocity,
|
sideVelocity,
|
||||||
targetSideVelocity,
|
targetSideVelocity,
|
||||||
@@ -202,6 +261,7 @@ private void ApplyRaftPositionAndRotation()
|
|||||||
targetPosition.y = transform.position.y;
|
targetPosition.y = transform.position.y;
|
||||||
|
|
||||||
float smoothTime = Mathf.Max(0.01f, pathFollowSmoothTime);
|
float smoothTime = Mathf.Max(0.01f, pathFollowSmoothTime);
|
||||||
|
|
||||||
transform.position = Vector3.SmoothDamp(
|
transform.position = Vector3.SmoothDamp(
|
||||||
transform.position,
|
transform.position,
|
||||||
targetPosition,
|
targetPosition,
|
||||||
@@ -215,6 +275,7 @@ private void ApplyRaftPositionAndRotation()
|
|||||||
frameVelocity.y = 0f;
|
frameVelocity.y = 0f;
|
||||||
|
|
||||||
Vector3 lookDirection = currentForward;
|
Vector3 lookDirection = currentForward;
|
||||||
|
|
||||||
if (frameVelocity.sqrMagnitude > 0.0001f)
|
if (frameVelocity.sqrMagnitude > 0.0001f)
|
||||||
{
|
{
|
||||||
lookDirection = Vector3.Slerp(
|
lookDirection = Vector3.Slerp(
|
||||||
@@ -224,6 +285,9 @@ private void ApplyRaftPositionAndRotation()
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (lookDirection.sqrMagnitude < 0.001f)
|
||||||
|
return;
|
||||||
|
|
||||||
Quaternion targetRotation =
|
Quaternion targetRotation =
|
||||||
Quaternion.LookRotation(lookDirection, Vector3.up) *
|
Quaternion.LookRotation(lookDirection, Vector3.up) *
|
||||||
Quaternion.Euler(0f, currentSteeringInput * steeringYawAngle, 0f);
|
Quaternion.Euler(0f, currentSteeringInput * steeringYawAngle, 0f);
|
||||||
@@ -236,25 +300,179 @@ private void ApplyRaftPositionAndRotation()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private bool IsCloseEnoughToFinalPoint(float distance)
|
||||||
|
{
|
||||||
|
float reachDistance = Mathf.Max(pointReachDistance, finalPointReachDistance);
|
||||||
|
return distance <= reachDistance;
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool TryFinishAtFinalPointByGuards()
|
||||||
|
{
|
||||||
|
int lastPointIndex = GetLastValidPathPointIndex();
|
||||||
|
|
||||||
|
if (lastPointIndex < 0)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (currentPointIndex != lastPointIndex)
|
||||||
|
{
|
||||||
|
ResetFinalStopGuard();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Transform finalPoint = pathPoints[lastPointIndex];
|
||||||
|
|
||||||
|
if (finalPoint == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
Vector3 finalDelta = finalPoint.position - currentCenterPosition;
|
||||||
|
finalDelta.y = 0f;
|
||||||
|
|
||||||
|
float distanceToFinal = finalDelta.magnitude;
|
||||||
|
|
||||||
|
if (distanceToFinal <= finalPointReachDistance)
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftRiverController] Final point reach distance 안에 들어와 도착 처리합니다.");
|
||||||
|
FinishAtFinalPoint();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (stopWhenPassedFinalPlane && HasPassedFinalPlane())
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftRiverController] 마지막 도착 평면을 지나 도착 처리합니다.");
|
||||||
|
FinishAtFinalPoint();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (TryFinishIfMovingAwayFromFinalPoint(finalDelta, distanceToFinal))
|
||||||
|
return true;
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool HasPassedFinalPlane()
|
||||||
|
{
|
||||||
|
int lastPointIndex = GetLastValidPathPointIndex();
|
||||||
|
int penultimateIndex = GetPenultimateValidPathPointIndex();
|
||||||
|
|
||||||
|
if (lastPointIndex < 0 || penultimateIndex < 0 || lastPointIndex == penultimateIndex)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
Transform finalPoint = pathPoints[lastPointIndex];
|
||||||
|
Transform previousPoint = pathPoints[penultimateIndex];
|
||||||
|
|
||||||
|
if (finalPoint == null || previousPoint == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
Vector3 previousPos = previousPoint.position;
|
||||||
|
Vector3 finalPos = finalPoint.position;
|
||||||
|
Vector3 centerPos = currentCenterPosition;
|
||||||
|
|
||||||
|
previousPos.y = 0f;
|
||||||
|
finalPos.y = 0f;
|
||||||
|
centerPos.y = 0f;
|
||||||
|
|
||||||
|
Vector3 finalSegmentDirection = finalPos - previousPos;
|
||||||
|
|
||||||
|
if (finalSegmentDirection.sqrMagnitude < 0.001f)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
finalSegmentDirection.Normalize();
|
||||||
|
|
||||||
|
Vector3 fromFinalToRaft = centerPos - finalPos;
|
||||||
|
|
||||||
|
float passedAmount = Vector3.Dot(fromFinalToRaft, finalSegmentDirection);
|
||||||
|
|
||||||
|
return passedAmount >= 0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool TryFinishIfMovingAwayFromFinalPoint(Vector3 finalDelta, float distanceToFinal)
|
||||||
|
{
|
||||||
|
if (distanceToFinal > finalStopGuardDistance)
|
||||||
|
{
|
||||||
|
previousFinalDelta = finalDelta;
|
||||||
|
hasPreviousFinalDelta = true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!hasPreviousFinalDelta)
|
||||||
|
{
|
||||||
|
previousFinalDelta = finalDelta;
|
||||||
|
hasPreviousFinalDelta = true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Vector3 previousAbs = new Vector3(
|
||||||
|
Mathf.Abs(previousFinalDelta.x),
|
||||||
|
0f,
|
||||||
|
Mathf.Abs(previousFinalDelta.z)
|
||||||
|
);
|
||||||
|
|
||||||
|
Vector3 currentAbs = new Vector3(
|
||||||
|
Mathf.Abs(finalDelta.x),
|
||||||
|
0f,
|
||||||
|
Mathf.Abs(finalDelta.z)
|
||||||
|
);
|
||||||
|
|
||||||
|
bool xMovingAway = currentAbs.x > previousAbs.x + finalStopGuardAxisEpsilon;
|
||||||
|
bool zMovingAway = currentAbs.z > previousAbs.z + finalStopGuardAxisEpsilon;
|
||||||
|
|
||||||
|
if (xMovingAway || zMovingAway)
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftRiverController] 마지막 포인트에서 멀어지는 것으로 판단하여 도착 처리합니다.");
|
||||||
|
FinishAtFinalPoint();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
previousFinalDelta = finalDelta;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void FinishAtFinalPoint()
|
||||||
|
{
|
||||||
|
int lastPointIndex = GetLastValidPathPointIndex();
|
||||||
|
|
||||||
|
if (lastPointIndex >= 0 && pathPoints[lastPointIndex] != null && snapToFinalPointOnArrive)
|
||||||
|
{
|
||||||
|
SnapToPathPoint(pathPoints[lastPointIndex]);
|
||||||
|
}
|
||||||
|
|
||||||
|
FinishRaftRide();
|
||||||
|
}
|
||||||
|
|
||||||
private void FinishRaftRide()
|
private void FinishRaftRide()
|
||||||
{
|
{
|
||||||
if (isFinished)
|
if (isFinished)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
isFinished = true;
|
isFinished = true;
|
||||||
|
SetSpeedMultiplier(0f);
|
||||||
|
|
||||||
|
sideVelocity = 0f;
|
||||||
|
currentSteeringInput = 0f;
|
||||||
|
positionSmoothVelocity = Vector3.zero;
|
||||||
|
|
||||||
Debug.Log("[RaftRiverController] Arrived at destination. Raft stopped.");
|
Debug.Log("[RaftRiverController] Arrived at destination. Raft stopped.");
|
||||||
|
|
||||||
onArrived?.Invoke();
|
onArrived?.Invoke();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void StopRaft()
|
public void StopRaft()
|
||||||
{
|
{
|
||||||
isFinished = true;
|
isFinished = true;
|
||||||
|
sideVelocity = 0f;
|
||||||
|
currentSteeringInput = 0f;
|
||||||
|
positionSmoothVelocity = Vector3.zero;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ResumeRaft()
|
public void ResumeRaft()
|
||||||
{
|
{
|
||||||
isFinished = false;
|
isFinished = false;
|
||||||
|
ResetFinalStopGuard();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SetSpeedMultiplier(float value)
|
||||||
|
{
|
||||||
|
speedMultiplier = Mathf.Clamp01(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetSteeringKey(SteeringKeyXR newSteeringKey)
|
public void SetSteeringKey(SteeringKeyXR newSteeringKey)
|
||||||
@@ -286,7 +504,11 @@ private Vector3 GetTravelForward(Vector3 fallbackForward)
|
|||||||
|
|
||||||
if (steeringKey != null && steeringKey.IsGrabbed)
|
if (steeringKey != null && steeringKey.IsGrabbed)
|
||||||
{
|
{
|
||||||
float turnAmount = currentSteeringInput * Mathf.Max(0f, grabbedSteeringTurnSpeed) * Time.deltaTime;
|
float turnAmount =
|
||||||
|
currentSteeringInput *
|
||||||
|
Mathf.Max(0f, grabbedSteeringTurnSpeed) *
|
||||||
|
Time.deltaTime;
|
||||||
|
|
||||||
travelForward = Quaternion.Euler(0f, turnAmount, 0f) * travelForward.normalized;
|
travelForward = Quaternion.Euler(0f, turnAmount, 0f) * travelForward.normalized;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -307,15 +529,22 @@ private bool ShouldAdvancePathPoint(int targetIndex, float distanceToTarget)
|
|||||||
|
|
||||||
private bool HasPassedPathPoint(int targetIndex)
|
private bool HasPassedPathPoint(int targetIndex)
|
||||||
{
|
{
|
||||||
if (pathPoints == null || targetIndex < 0 || targetIndex >= pathPoints.Length || pathPoints[targetIndex] == null)
|
if (pathPoints == null ||
|
||||||
|
targetIndex < 0 ||
|
||||||
|
targetIndex >= pathPoints.Length ||
|
||||||
|
pathPoints[targetIndex] == null)
|
||||||
|
{
|
||||||
return true;
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
Vector3 anchorPosition = GetPreviousPathAnchorPosition(targetIndex);
|
Vector3 anchorPosition = GetPreviousPathAnchorPosition(targetIndex);
|
||||||
Vector3 targetPosition = pathPoints[targetIndex].position;
|
Vector3 targetPosition = pathPoints[targetIndex].position;
|
||||||
|
|
||||||
anchorPosition.y = currentCenterPosition.y;
|
anchorPosition.y = currentCenterPosition.y;
|
||||||
targetPosition.y = currentCenterPosition.y;
|
targetPosition.y = currentCenterPosition.y;
|
||||||
|
|
||||||
Vector3 segment = targetPosition - anchorPosition;
|
Vector3 segment = targetPosition - anchorPosition;
|
||||||
|
|
||||||
if (segment.sqrMagnitude < 0.001f)
|
if (segment.sqrMagnitude < 0.001f)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
@@ -348,12 +577,16 @@ private void SnapToPathPoint(Transform point)
|
|||||||
finalPosition.y = transform.position.y;
|
finalPosition.y = transform.position.y;
|
||||||
|
|
||||||
currentCenterPosition = finalPosition;
|
currentCenterPosition = finalPosition;
|
||||||
|
|
||||||
sideOffset = 0f;
|
sideOffset = 0f;
|
||||||
sideVelocity = 0f;
|
sideVelocity = 0f;
|
||||||
currentSteeringInput = 0f;
|
currentSteeringInput = 0f;
|
||||||
positionSmoothVelocity = Vector3.zero;
|
positionSmoothVelocity = Vector3.zero;
|
||||||
previousPosition = finalPosition;
|
previousPosition = finalPosition;
|
||||||
|
|
||||||
transform.position = finalPosition;
|
transform.position = finalPosition;
|
||||||
|
|
||||||
|
ResetFinalStopGuard();
|
||||||
}
|
}
|
||||||
|
|
||||||
private int GetPenultimateValidPathPointIndex()
|
private int GetPenultimateValidPathPointIndex()
|
||||||
@@ -383,18 +616,25 @@ private int GetPenultimateValidPathPointIndex()
|
|||||||
private float GetArrivalSlowDownDistance()
|
private float GetArrivalSlowDownDistance()
|
||||||
{
|
{
|
||||||
float fallbackDistance = Mathf.Max(pointReachDistance + 0.01f, arrivalSlowDownDistance);
|
float fallbackDistance = Mathf.Max(pointReachDistance + 0.01f, arrivalSlowDownDistance);
|
||||||
|
|
||||||
int penultimateIndex = GetPenultimateValidPathPointIndex();
|
int penultimateIndex = GetPenultimateValidPathPointIndex();
|
||||||
int lastPointIndex = GetLastValidPathPointIndex();
|
int lastPointIndex = GetLastValidPathPointIndex();
|
||||||
|
|
||||||
if (penultimateIndex < 0 || lastPointIndex < 0 || penultimateIndex == lastPointIndex)
|
if (penultimateIndex < 0 ||
|
||||||
|
lastPointIndex < 0 ||
|
||||||
|
penultimateIndex == lastPointIndex)
|
||||||
|
{
|
||||||
return fallbackDistance;
|
return fallbackDistance;
|
||||||
|
}
|
||||||
|
|
||||||
Vector3 penultimatePosition = pathPoints[penultimateIndex].position;
|
Vector3 penultimatePosition = pathPoints[penultimateIndex].position;
|
||||||
Vector3 finalPosition = pathPoints[lastPointIndex].position;
|
Vector3 finalPosition = pathPoints[lastPointIndex].position;
|
||||||
|
|
||||||
penultimatePosition.y = 0f;
|
penultimatePosition.y = 0f;
|
||||||
finalPosition.y = 0f;
|
finalPosition.y = 0f;
|
||||||
|
|
||||||
float finalSegmentDistance = Vector3.Distance(penultimatePosition, finalPosition);
|
float finalSegmentDistance = Vector3.Distance(penultimatePosition, finalPosition);
|
||||||
|
|
||||||
if (finalSegmentDistance <= pointReachDistance)
|
if (finalSegmentDistance <= pointReachDistance)
|
||||||
return fallbackDistance;
|
return fallbackDistance;
|
||||||
|
|
||||||
@@ -403,22 +643,46 @@ private float GetArrivalSlowDownDistance()
|
|||||||
|
|
||||||
private float GetCurrentForwardSpeed(float distanceToTarget)
|
private float GetCurrentForwardSpeed(float distanceToTarget)
|
||||||
{
|
{
|
||||||
|
float baseSpeed;
|
||||||
|
|
||||||
if (currentPointIndex != GetLastValidPathPointIndex())
|
if (currentPointIndex != GetLastValidPathPointIndex())
|
||||||
return forwardSpeed;
|
{
|
||||||
|
baseSpeed = forwardSpeed;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
float maxSpeed = Mathf.Max(0f, forwardSpeed);
|
||||||
|
|
||||||
float maxSpeed = Mathf.Max(0f, forwardSpeed);
|
if (maxSpeed <= 0.01f)
|
||||||
if (maxSpeed <= 0.01f)
|
{
|
||||||
return maxSpeed;
|
baseSpeed = maxSpeed;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
float slowDownDistance = GetArrivalSlowDownDistance();
|
||||||
|
|
||||||
float slowDownDistance = GetArrivalSlowDownDistance();
|
if (slowDownDistance <= pointReachDistance)
|
||||||
if (slowDownDistance <= pointReachDistance)
|
{
|
||||||
return maxSpeed;
|
baseSpeed = maxSpeed;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
float minSpeed = Mathf.Clamp(arrivalMinSpeed, 0.01f, maxSpeed);
|
||||||
|
|
||||||
float minSpeed = Mathf.Clamp(arrivalMinSpeed, 0.01f, maxSpeed);
|
float speedRatio = Mathf.InverseLerp(
|
||||||
float speedRatio = Mathf.InverseLerp(pointReachDistance, slowDownDistance, distanceToTarget);
|
pointReachDistance,
|
||||||
speedRatio = speedRatio * speedRatio * (3f - 2f * speedRatio);
|
slowDownDistance,
|
||||||
|
distanceToTarget
|
||||||
|
);
|
||||||
|
|
||||||
return Mathf.Lerp(minSpeed, maxSpeed, speedRatio);
|
speedRatio = speedRatio * speedRatio * (3f - 2f * speedRatio);
|
||||||
|
|
||||||
|
baseSpeed = Mathf.Lerp(minSpeed, maxSpeed, speedRatio);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return baseSpeed * speedMultiplier;
|
||||||
}
|
}
|
||||||
|
|
||||||
private int GetLastValidPathPointIndex()
|
private int GetLastValidPathPointIndex()
|
||||||
@@ -443,6 +707,12 @@ private void SkipMissingPathPoints()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ResetFinalStopGuard()
|
||||||
|
{
|
||||||
|
previousFinalDelta = Vector3.zero;
|
||||||
|
hasPreviousFinalDelta = false;
|
||||||
|
}
|
||||||
|
|
||||||
private float ReadLegacyHorizontalInput()
|
private float ReadLegacyHorizontalInput()
|
||||||
{
|
{
|
||||||
#if ENABLE_LEGACY_INPUT_MANAGER
|
#if ENABLE_LEGACY_INPUT_MANAGER
|
||||||
|
|||||||
238
Assets/02_Scripts/Cave/RaftStartManager.cs
Normal file
238
Assets/02_Scripts/Cave/RaftStartManager.cs
Normal file
@@ -0,0 +1,238 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public class RaftStartManager : MonoBehaviour
|
||||||
|
{
|
||||||
|
private enum StartState
|
||||||
|
{
|
||||||
|
Ready,
|
||||||
|
WaitingForKeyGrab,
|
||||||
|
Starting,
|
||||||
|
Riding,
|
||||||
|
Arrived,
|
||||||
|
Failed
|
||||||
|
}
|
||||||
|
|
||||||
|
[Header("References")]
|
||||||
|
[SerializeField] private RaftRiverController raftController;
|
||||||
|
[SerializeField] private SteeringKeyXR steeringKey;
|
||||||
|
|
||||||
|
[Tooltip("현재는 캡슐 요정. 나중에 요정 캐릭터 모델로 교체할 부모 오브젝트를 넣으면 됩니다.")]
|
||||||
|
[SerializeField] private GameObject fairyObject;
|
||||||
|
|
||||||
|
[Header("Obstacles")]
|
||||||
|
[Tooltip("뗏목 출발 시 함께 작동할 코뿔소들입니다.")]
|
||||||
|
[SerializeField] private RhinoObstacle[] rhinos;
|
||||||
|
|
||||||
|
[Header("Health")]
|
||||||
|
[SerializeField] private RaftHealth raftHealth;
|
||||||
|
|
||||||
|
[Header("Start Settings")]
|
||||||
|
[SerializeField] private bool waitForKeyGrab = true;
|
||||||
|
|
||||||
|
[Tooltip("키를 잡은 뒤 뗏목이 완전히 출발 속도에 도달하기까지 걸리는 시간")]
|
||||||
|
[SerializeField] private float startAccelerationDuration = 2.0f;
|
||||||
|
|
||||||
|
[Tooltip("출발 직후 바로 요정이 사라질지 여부")]
|
||||||
|
[SerializeField] private bool hideFairyOnStart = true;
|
||||||
|
|
||||||
|
[Header("Debug")]
|
||||||
|
[SerializeField] private bool showDebugLog = true;
|
||||||
|
|
||||||
|
private StartState state = StartState.Ready;
|
||||||
|
private Coroutine startRoutine;
|
||||||
|
|
||||||
|
private void Start()
|
||||||
|
{
|
||||||
|
SetupStartState();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Update()
|
||||||
|
{
|
||||||
|
if (state != StartState.WaitingForKeyGrab)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (!waitForKeyGrab)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (steeringKey != null && steeringKey.IsGrabbed)
|
||||||
|
{
|
||||||
|
BeginRaftRide();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetupStartState()
|
||||||
|
{
|
||||||
|
ResolveReferences();
|
||||||
|
|
||||||
|
state = StartState.WaitingForKeyGrab;
|
||||||
|
|
||||||
|
if (raftController != null)
|
||||||
|
{
|
||||||
|
raftController.StopRaft();
|
||||||
|
raftController.SetSpeedMultiplier(0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (raftHealth != null)
|
||||||
|
{
|
||||||
|
raftHealth.ResetHealth();
|
||||||
|
}
|
||||||
|
|
||||||
|
StopAllRhinos();
|
||||||
|
|
||||||
|
if (fairyObject != null)
|
||||||
|
{
|
||||||
|
fairyObject.SetActive(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftStartManager] 시작 준비 완료. 키를 잡으면 뗏목이 출발합니다.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ResolveReferences()
|
||||||
|
{
|
||||||
|
if (raftController == null)
|
||||||
|
raftController = FindFirstObjectByType<RaftRiverController>();
|
||||||
|
|
||||||
|
if (steeringKey == null)
|
||||||
|
steeringKey = FindFirstObjectByType<SteeringKeyXR>();
|
||||||
|
|
||||||
|
if (raftHealth == null)
|
||||||
|
raftHealth = FindFirstObjectByType<RaftHealth>();
|
||||||
|
|
||||||
|
if (rhinos == null || rhinos.Length == 0)
|
||||||
|
rhinos = FindObjectsByType<RhinoObstacle>(FindObjectsSortMode.None);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void BeginRaftRide()
|
||||||
|
{
|
||||||
|
if (state == StartState.Starting || state == StartState.Riding)
|
||||||
|
return;
|
||||||
|
|
||||||
|
state = StartState.Starting;
|
||||||
|
|
||||||
|
if (hideFairyOnStart && fairyObject != null)
|
||||||
|
{
|
||||||
|
fairyObject.SetActive(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (startRoutine != null)
|
||||||
|
StopCoroutine(startRoutine);
|
||||||
|
|
||||||
|
startRoutine = StartCoroutine(StartRaftSmoothly());
|
||||||
|
}
|
||||||
|
|
||||||
|
private IEnumerator StartRaftSmoothly()
|
||||||
|
{
|
||||||
|
if (raftController == null)
|
||||||
|
{
|
||||||
|
Debug.LogWarning("[RaftStartManager] RaftRiverController가 연결되지 않았습니다.", this);
|
||||||
|
yield break;
|
||||||
|
}
|
||||||
|
|
||||||
|
raftController.SetSpeedMultiplier(0f);
|
||||||
|
raftController.ResumeRaft();
|
||||||
|
|
||||||
|
StartAllRhinos();
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftStartManager] 뗏목 출발 시작. 코뿔소 장애물도 시작합니다.");
|
||||||
|
}
|
||||||
|
|
||||||
|
float timer = 0f;
|
||||||
|
float duration = Mathf.Max(0.01f, startAccelerationDuration);
|
||||||
|
|
||||||
|
while (timer < duration)
|
||||||
|
{
|
||||||
|
timer += Time.deltaTime;
|
||||||
|
|
||||||
|
float t = Mathf.Clamp01(timer / duration);
|
||||||
|
float smoothT = t * t * (3f - 2f * t);
|
||||||
|
|
||||||
|
raftController.SetSpeedMultiplier(smoothT);
|
||||||
|
|
||||||
|
yield return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
raftController.SetSpeedMultiplier(1f);
|
||||||
|
|
||||||
|
state = StartState.Riding;
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftStartManager] 뗏목 정상 운항 속도 도달.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnRaftArrived()
|
||||||
|
{
|
||||||
|
if (state == StartState.Arrived)
|
||||||
|
return;
|
||||||
|
|
||||||
|
state = StartState.Arrived;
|
||||||
|
|
||||||
|
if (raftController != null)
|
||||||
|
{
|
||||||
|
raftController.SetSpeedMultiplier(0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
StopAllRhinos();
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftStartManager] 목적지 도착. 뗏목 구간 종료. 코뿔소 장애물 정지.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnRaftFailed()
|
||||||
|
{
|
||||||
|
if (state == StartState.Failed)
|
||||||
|
return;
|
||||||
|
|
||||||
|
state = StartState.Failed;
|
||||||
|
|
||||||
|
if (raftController != null)
|
||||||
|
{
|
||||||
|
raftController.StopRaft();
|
||||||
|
raftController.SetSpeedMultiplier(0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
StopAllRhinos();
|
||||||
|
|
||||||
|
if (showDebugLog)
|
||||||
|
{
|
||||||
|
Debug.Log("[RaftStartManager] 체력 0. 뗏목 구간 실패. 코뿔소 장애물 정지.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void StartAllRhinos()
|
||||||
|
{
|
||||||
|
if (rhinos == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
foreach (RhinoObstacle rhino in rhinos)
|
||||||
|
{
|
||||||
|
if (rhino == null)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
rhino.StartRhino();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void StopAllRhinos()
|
||||||
|
{
|
||||||
|
if (rhinos == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
foreach (RhinoObstacle rhino in rhinos)
|
||||||
|
{
|
||||||
|
if (rhino == null)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
rhino.StopRhino();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/02_Scripts/Cave/RaftStartManager.cs.meta
Normal file
2
Assets/02_Scripts/Cave/RaftStartManager.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 24e1027c38bc1e34b9b4d80397ad481a
|
||||||
310
Assets/02_Scripts/Cave/RhinoObstacle.cs
Normal file
310
Assets/02_Scripts/Cave/RhinoObstacle.cs
Normal file
@@ -0,0 +1,310 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public class RhinoObstacle : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Header("References")]
|
||||||
|
[SerializeField] private Transform rhinoRoot;
|
||||||
|
[SerializeField] private Animator animator;
|
||||||
|
[SerializeField] private DamageObstacle damageObstacle;
|
||||||
|
|
||||||
|
[Tooltip("수면 위에 있을 때만 켤 코뿔소 충돌 콜라이더들입니다. RhinoHitBox의 Collider를 넣으세요.")]
|
||||||
|
[SerializeField] private Collider[] damageColliders;
|
||||||
|
|
||||||
|
[Header("Position")]
|
||||||
|
[SerializeField] private Transform underwaterPoint;
|
||||||
|
[SerializeField] private Transform surfacePoint;
|
||||||
|
|
||||||
|
[Header("Timing")]
|
||||||
|
[SerializeField] private float minHiddenTime = 2.0f;
|
||||||
|
[SerializeField] private float maxHiddenTime = 5.0f;
|
||||||
|
|
||||||
|
[SerializeField] private float riseDuration = 0.8f;
|
||||||
|
[SerializeField] private float surfaceIdleTime = 0.4f;
|
||||||
|
[SerializeField] private float attackStayTime = 1.2f;
|
||||||
|
[SerializeField] private float diveDuration = 0.7f;
|
||||||
|
|
||||||
|
[Header("Animation")]
|
||||||
|
[SerializeField] private string idleStateName = "Idle";
|
||||||
|
[SerializeField] private string hitTriggerName = "Hit";
|
||||||
|
[SerializeField] private float idleCrossFadeDuration = 0.1f;
|
||||||
|
|
||||||
|
[Header("Options")]
|
||||||
|
[SerializeField] private bool startAutomatically = true;
|
||||||
|
[SerializeField] private bool loop = true;
|
||||||
|
[SerializeField] private bool showDebugLog = true;
|
||||||
|
|
||||||
|
private Coroutine routine;
|
||||||
|
private bool isRunning;
|
||||||
|
private bool isSurfaced;
|
||||||
|
|
||||||
|
public bool IsSurfaced => isSurfaced;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
ResolveReferences();
|
||||||
|
|
||||||
|
if (animator != null)
|
||||||
|
{
|
||||||
|
animator.applyRootMotion = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
SetDamageActive(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Start()
|
||||||
|
{
|
||||||
|
MoveImmediatelyToUnderwater();
|
||||||
|
ForceIdleAnimation();
|
||||||
|
|
||||||
|
if (startAutomatically)
|
||||||
|
{
|
||||||
|
StartRhino();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ResolveReferences()
|
||||||
|
{
|
||||||
|
if (rhinoRoot == null)
|
||||||
|
rhinoRoot = transform;
|
||||||
|
|
||||||
|
if (animator == null)
|
||||||
|
animator = GetComponentInChildren<Animator>();
|
||||||
|
|
||||||
|
if (damageObstacle == null)
|
||||||
|
damageObstacle = GetComponentInChildren<DamageObstacle>();
|
||||||
|
|
||||||
|
if (damageColliders == null || damageColliders.Length == 0)
|
||||||
|
{
|
||||||
|
damageColliders = GetComponentsInChildren<Collider>(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void StartRhino()
|
||||||
|
{
|
||||||
|
if (routine != null)
|
||||||
|
{
|
||||||
|
StopCoroutine(routine);
|
||||||
|
}
|
||||||
|
|
||||||
|
isRunning = true;
|
||||||
|
routine = StartCoroutine(RhinoRoutine());
|
||||||
|
|
||||||
|
Log("시작");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void StopRhino()
|
||||||
|
{
|
||||||
|
isRunning = false;
|
||||||
|
|
||||||
|
if (routine != null)
|
||||||
|
{
|
||||||
|
StopCoroutine(routine);
|
||||||
|
routine = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
SetDamageActive(false);
|
||||||
|
ForceIdleAnimation();
|
||||||
|
MoveImmediatelyToUnderwater();
|
||||||
|
|
||||||
|
Log("정지");
|
||||||
|
}
|
||||||
|
|
||||||
|
private IEnumerator RhinoRoutine()
|
||||||
|
{
|
||||||
|
while (isRunning)
|
||||||
|
{
|
||||||
|
// 1. 물속 대기
|
||||||
|
isSurfaced = false;
|
||||||
|
SetDamageActive(false);
|
||||||
|
ForceIdleAnimation();
|
||||||
|
|
||||||
|
float hiddenWait = Random.Range(minHiddenTime, maxHiddenTime);
|
||||||
|
Log($"물속 대기 {hiddenWait:0.0}초");
|
||||||
|
|
||||||
|
yield return new WaitForSeconds(hiddenWait);
|
||||||
|
|
||||||
|
if (!isRunning)
|
||||||
|
break;
|
||||||
|
|
||||||
|
// 2. 수면 위로 떠오름
|
||||||
|
Log("떠오름 시작");
|
||||||
|
yield return MoveToSurface();
|
||||||
|
|
||||||
|
if (!isRunning)
|
||||||
|
break;
|
||||||
|
|
||||||
|
// 3. 수면 위에 도착한 순간부터 충돌 가능
|
||||||
|
isSurfaced = true;
|
||||||
|
SetDamageActive(true);
|
||||||
|
ForceIdleAnimation();
|
||||||
|
|
||||||
|
Log("수면 위 도착 / 데미지 콜라이더 ON");
|
||||||
|
|
||||||
|
yield return new WaitForSeconds(surfaceIdleTime);
|
||||||
|
|
||||||
|
if (!isRunning)
|
||||||
|
break;
|
||||||
|
|
||||||
|
// 4. 공격 실행
|
||||||
|
Log("공격 시작");
|
||||||
|
PlayHitAnimation();
|
||||||
|
|
||||||
|
yield return new WaitForSeconds(attackStayTime);
|
||||||
|
|
||||||
|
// 5. 공격 종료 후 Idle 복귀
|
||||||
|
Log("공격 종료 / Idle 복귀");
|
||||||
|
ForceIdleAnimation();
|
||||||
|
|
||||||
|
if (!isRunning)
|
||||||
|
break;
|
||||||
|
|
||||||
|
// 6. 잠수 시작 전 충돌 끄기
|
||||||
|
isSurfaced = false;
|
||||||
|
SetDamageActive(false);
|
||||||
|
|
||||||
|
Log("잠수 시작 / 데미지 콜라이더 OFF");
|
||||||
|
yield return MoveToUnderwater();
|
||||||
|
|
||||||
|
if (!loop)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
routine = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private IEnumerator MoveToSurface()
|
||||||
|
{
|
||||||
|
if (rhinoRoot == null || surfacePoint == null)
|
||||||
|
yield break;
|
||||||
|
|
||||||
|
Vector3 startPos = rhinoRoot.position;
|
||||||
|
Vector3 endPos = surfacePoint.position;
|
||||||
|
|
||||||
|
float timer = 0f;
|
||||||
|
float duration = Mathf.Max(0.01f, riseDuration);
|
||||||
|
|
||||||
|
while (timer < duration)
|
||||||
|
{
|
||||||
|
timer += Time.deltaTime;
|
||||||
|
|
||||||
|
float t = Mathf.Clamp01(timer / duration);
|
||||||
|
float smoothT = Smooth01(t);
|
||||||
|
|
||||||
|
rhinoRoot.position = Vector3.Lerp(startPos, endPos, smoothT);
|
||||||
|
|
||||||
|
yield return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
rhinoRoot.position = endPos;
|
||||||
|
}
|
||||||
|
|
||||||
|
private IEnumerator MoveToUnderwater()
|
||||||
|
{
|
||||||
|
if (rhinoRoot == null || underwaterPoint == null)
|
||||||
|
yield break;
|
||||||
|
|
||||||
|
Vector3 startPos = rhinoRoot.position;
|
||||||
|
Vector3 endPos = underwaterPoint.position;
|
||||||
|
|
||||||
|
float timer = 0f;
|
||||||
|
float duration = Mathf.Max(0.01f, diveDuration);
|
||||||
|
|
||||||
|
while (timer < duration)
|
||||||
|
{
|
||||||
|
timer += Time.deltaTime;
|
||||||
|
|
||||||
|
float t = Mathf.Clamp01(timer / duration);
|
||||||
|
float smoothT = Smooth01(t);
|
||||||
|
|
||||||
|
rhinoRoot.position = Vector3.Lerp(startPos, endPos, smoothT);
|
||||||
|
|
||||||
|
yield return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
rhinoRoot.position = endPos;
|
||||||
|
|
||||||
|
isSurfaced = false;
|
||||||
|
SetDamageActive(false);
|
||||||
|
ForceIdleAnimation();
|
||||||
|
|
||||||
|
Log("잠수 완료");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void PlayHitAnimation()
|
||||||
|
{
|
||||||
|
if (animator == null)
|
||||||
|
{
|
||||||
|
LogWarning("Animator가 없습니다.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (string.IsNullOrEmpty(hitTriggerName))
|
||||||
|
return;
|
||||||
|
|
||||||
|
animator.ResetTrigger(hitTriggerName);
|
||||||
|
animator.SetTrigger(hitTriggerName);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ForceIdleAnimation()
|
||||||
|
{
|
||||||
|
if (animator == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (!string.IsNullOrEmpty(hitTriggerName))
|
||||||
|
{
|
||||||
|
animator.ResetTrigger(hitTriggerName);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!string.IsNullOrEmpty(idleStateName))
|
||||||
|
{
|
||||||
|
animator.CrossFade(idleStateName, idleCrossFadeDuration, 0, 0f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void MoveImmediatelyToUnderwater()
|
||||||
|
{
|
||||||
|
if (rhinoRoot == null || underwaterPoint == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
rhinoRoot.position = underwaterPoint.position;
|
||||||
|
isSurfaced = false;
|
||||||
|
SetDamageActive(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetDamageActive(bool active)
|
||||||
|
{
|
||||||
|
if (damageObstacle != null)
|
||||||
|
{
|
||||||
|
damageObstacle.SetCanDamage(active);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (damageColliders == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
foreach (Collider col in damageColliders)
|
||||||
|
{
|
||||||
|
if (col == null)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
col.enabled = active;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private float Smooth01(float t)
|
||||||
|
{
|
||||||
|
return t * t * (3f - 2f * t);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Log(string message)
|
||||||
|
{
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.Log($"[RhinoObstacle] {name} / {message}");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LogWarning(string message)
|
||||||
|
{
|
||||||
|
if (showDebugLog)
|
||||||
|
Debug.LogWarning($"[RhinoObstacle] {name} / {message}", this);
|
||||||
|
}
|
||||||
|
}
|
||||||
2
Assets/02_Scripts/Cave/RhinoObstacle.cs.meta
Normal file
2
Assets/02_Scripts/Cave/RhinoObstacle.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1650344929a31bf469215ce025b8fd1d
|
||||||
5
Assets/02_Scripts/Cave/XRHandMarker.cs
Normal file
5
Assets/02_Scripts/Cave/XRHandMarker.cs
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public class XRHandMarker : MonoBehaviour
|
||||||
|
{
|
||||||
|
}
|
||||||
2
Assets/02_Scripts/Cave/XRHandMarker.cs.meta
Normal file
2
Assets/02_Scripts/Cave/XRHandMarker.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 559f6e10a7fe4e2468ff96e9693b444e
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using UnityEngine.Events;
|
||||||
using UnityEngine.InputSystem;
|
using UnityEngine.InputSystem;
|
||||||
|
|
||||||
public enum Result { Perfect, Good, Bad, Miss }
|
public enum Result { Perfect, Good, Bad, Miss }
|
||||||
@@ -40,6 +41,12 @@ public class RhythmManager : MonoBehaviour
|
|||||||
[SerializeField] private AudioClip _countdownBeep; // 매초 카운트 효과음 (5,4,3,2,1)
|
[SerializeField] private AudioClip _countdownBeep; // 매초 카운트 효과음 (5,4,3,2,1)
|
||||||
[SerializeField] private AudioClip _countdownGoSfx; // 카운트 끝(GO) 효과음 (선택)
|
[SerializeField] private AudioClip _countdownGoSfx; // 카운트 끝(GO) 효과음 (선택)
|
||||||
|
|
||||||
|
[Header("게임 종료 후 이벤트")]
|
||||||
|
[SerializeField] private int _targetScore = 1000; // 이 점수 이상이면 성공(OnCleared), 미만이면 실패(OnFailed)
|
||||||
|
[SerializeField] private float _postGameDelay = 3f; // 곡 종료 후 이벤트까지 대기 시간(초)
|
||||||
|
[SerializeField] private UnityEvent _onCleared; // 성공 시 (지연 후) 호출 — 인스펙터에서 연결
|
||||||
|
[SerializeField] private UnityEvent _onFailed; // 실패 시 (지연 후) 호출 — 인스펙터에서 연결
|
||||||
|
|
||||||
// 모든 타이밍의 기준. 오디오 클럭(dspTime) 기반이라 리드인 동안 음수(-leadTime→0)로 흐른다
|
// 모든 타이밍의 기준. 오디오 클럭(dspTime) 기반이라 리드인 동안 음수(-leadTime→0)로 흐른다
|
||||||
public float SongTime => (float)(AudioSettings.dspTime - _dspSongStart);
|
public float SongTime => (float)(AudioSettings.dspTime - _dspSongStart);
|
||||||
|
|
||||||
@@ -341,12 +348,33 @@ public void StopSong()
|
|||||||
|
|
||||||
OnSongFinished?.Invoke(Score); // 결과창 표시
|
OnSongFinished?.Invoke(Score); // 결과창 표시
|
||||||
|
|
||||||
|
// 게임 종료 후 지연 이벤트 (목표 점수 도달 여부로 성공/실패 분기)
|
||||||
|
_ = PostGameEventAsync(Score.Score >= _targetScore);
|
||||||
|
|
||||||
for(int i=0;i<_rhythmCats.Length;i++)
|
for(int i=0;i<_rhythmCats.Length;i++)
|
||||||
{
|
{
|
||||||
_rhythmCats[i].DanceStop();
|
_rhythmCats[i].DanceStop();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 곡 종료 후 _postGameDelay초 대기한 뒤 성공/실패 이벤트 호출.
|
||||||
|
// cleared는 종료 시점에 판정해서 넘긴다(지연 중 점수가 바뀌지 않지만 의도 명확화).
|
||||||
|
private async Awaitable PostGameEventAsync(bool cleared)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (_postGameDelay > 0f)
|
||||||
|
await Awaitable.WaitForSecondsAsync(_postGameDelay, destroyCancellationToken);
|
||||||
|
}
|
||||||
|
catch (OperationCanceledException)
|
||||||
|
{
|
||||||
|
return; // 대기 중 오브젝트 파괴 시 이벤트 호출 안 함
|
||||||
|
}
|
||||||
|
|
||||||
|
if (cleared) _onCleared?.Invoke();
|
||||||
|
else _onFailed?.Invoke();
|
||||||
|
}
|
||||||
|
|
||||||
// 노트가 판정선을 지나쳐 스스로 Miss 처리될 때 호출 (노트는 이미 자기 파괴됨)
|
// 노트가 판정선을 지나쳐 스스로 Miss 처리될 때 호출 (노트는 이미 자기 파괴됨)
|
||||||
private void OnNoteMissed(RhythmNoteInstance note)
|
private void OnNoteMissed(RhythmNoteInstance note)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -5,5 +5,6 @@ public enum Zone
|
|||||||
None,
|
None,
|
||||||
Ocean,
|
Ocean,
|
||||||
Island,
|
Island,
|
||||||
Seaside
|
Seaside,
|
||||||
|
BlackjackGame
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
Assets/04_Models/Blackjack/object/Spear.fbx
LFS
Normal file
BIN
Assets/04_Models/Blackjack/object/Spear.fbx
LFS
Normal file
Binary file not shown.
115
Assets/04_Models/Blackjack/object/Spear.fbx.meta
Normal file
115
Assets/04_Models/Blackjack/object/Spear.fbx.meta
Normal file
@@ -0,0 +1,115 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ed33107e6d6c54148911589b9168d604
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 24200
|
||||||
|
internalIDToNameTable: []
|
||||||
|
externalObjects:
|
||||||
|
- first:
|
||||||
|
type: UnityEngine:Material
|
||||||
|
assembly: UnityEngine.CoreModule
|
||||||
|
name: Spear
|
||||||
|
second: {fileID: 2100000, guid: da8faeba047a4bd4490df2c3994b7da5, type: 2}
|
||||||
|
materials:
|
||||||
|
materialImportMode: 2
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
materialLocation: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
removeConstantScaleCurves: 0
|
||||||
|
motionNodeName:
|
||||||
|
animationImportErrors:
|
||||||
|
animationImportWarnings:
|
||||||
|
animationRetargetingWarnings:
|
||||||
|
animationDoRetargetingWarnings: 0
|
||||||
|
importAnimatedCustomProperties: 0
|
||||||
|
importConstraints: 0
|
||||||
|
animationCompression: 1
|
||||||
|
animationRotationError: 0.5
|
||||||
|
animationPositionError: 0.5
|
||||||
|
animationScaleError: 0.5
|
||||||
|
animationWrapMode: 0
|
||||||
|
extraExposedTransformPaths: []
|
||||||
|
extraUserProperties: []
|
||||||
|
clipAnimations: []
|
||||||
|
isReadable: 0
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
useSRGBMaterialColor: 1
|
||||||
|
sortHierarchyByName: 1
|
||||||
|
importPhysicalCameras: 1
|
||||||
|
importVisibility: 1
|
||||||
|
importBlendShapes: 1
|
||||||
|
importCameras: 1
|
||||||
|
importLights: 1
|
||||||
|
nodeNameCollisionStrategy: 1
|
||||||
|
fileIdsGeneration: 2
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
bakeAxisConversion: 0
|
||||||
|
preserveHierarchy: 0
|
||||||
|
skinWeightsMode: 0
|
||||||
|
maxBonesPerVertex: 4
|
||||||
|
minBoneWeight: 0.001
|
||||||
|
optimizeBones: 1
|
||||||
|
generateMeshLods: 0
|
||||||
|
meshLodGenerationFlags: 0
|
||||||
|
maximumMeshLod: -1
|
||||||
|
meshOptimizationFlags: -1
|
||||||
|
indexFormat: 0
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVMarginMethod: 1
|
||||||
|
secondaryUVMinLightmapResolution: 40
|
||||||
|
secondaryUVMinObjectScale: 1
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
strictVertexDataChecks: 0
|
||||||
|
tangentSpace:
|
||||||
|
normalSmoothAngle: 60
|
||||||
|
normalImportMode: 0
|
||||||
|
tangentImportMode: 3
|
||||||
|
normalCalculationMode: 4
|
||||||
|
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||||
|
blendShapeNormalImportMode: 1
|
||||||
|
normalSmoothingSource: 0
|
||||||
|
referencedClips: []
|
||||||
|
importAnimation: 1
|
||||||
|
humanDescription:
|
||||||
|
serializedVersion: 3
|
||||||
|
human: []
|
||||||
|
skeleton: []
|
||||||
|
armTwist: 0.5
|
||||||
|
foreArmTwist: 0.5
|
||||||
|
upperLegTwist: 0.5
|
||||||
|
legTwist: 0.5
|
||||||
|
armStretch: 0.05
|
||||||
|
legStretch: 0.05
|
||||||
|
feetSpacing: 0
|
||||||
|
globalScale: 1
|
||||||
|
rootMotionBoneName:
|
||||||
|
hasTranslationDoF: 0
|
||||||
|
hasExtraRoot: 0
|
||||||
|
skeletonHasParents: 1
|
||||||
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
|
autoGenerateAvatarMappingIfUnspecified: 1
|
||||||
|
animationType: 2
|
||||||
|
humanoidOversampling: 1
|
||||||
|
avatarSetup: 0
|
||||||
|
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||||
|
importBlendShapeDeformPercent: 1
|
||||||
|
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -7,10 +7,11 @@ AnimatorState:
|
|||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_Name: WhiteRhino_Skelmesh|Rhino_Combat_Atk_Hit
|
m_Name: Hit
|
||||||
m_Speed: 1
|
m_Speed: 1
|
||||||
m_CycleOffset: 0
|
m_CycleOffset: 0
|
||||||
m_Transitions: []
|
m_Transitions:
|
||||||
|
- {fileID: 5211168254593058196}
|
||||||
m_StateMachineBehaviours: []
|
m_StateMachineBehaviours: []
|
||||||
m_Position: {x: 50, y: 50, z: 0}
|
m_Position: {x: 50, y: 50, z: 0}
|
||||||
m_IKOnFeet: 0
|
m_IKOnFeet: 0
|
||||||
@@ -35,7 +36,7 @@ AnimatorStateTransition:
|
|||||||
m_Name:
|
m_Name:
|
||||||
m_Conditions:
|
m_Conditions:
|
||||||
- m_ConditionMode: 1
|
- m_ConditionMode: 1
|
||||||
m_ConditionEvent: isIdle
|
m_ConditionEvent: Hit
|
||||||
m_EventTreshold: 0
|
m_EventTreshold: 0
|
||||||
m_DstStateMachine: {fileID: 0}
|
m_DstStateMachine: {fileID: 0}
|
||||||
m_DstState: {fileID: -5762510348686555522}
|
m_DstState: {fileID: -5762510348686555522}
|
||||||
@@ -46,7 +47,7 @@ AnimatorStateTransition:
|
|||||||
m_TransitionDuration: 0.25
|
m_TransitionDuration: 0.25
|
||||||
m_TransitionOffset: 0
|
m_TransitionOffset: 0
|
||||||
m_ExitTime: 0.95
|
m_ExitTime: 0.95
|
||||||
m_HasExitTime: 1
|
m_HasExitTime: 0
|
||||||
m_HasFixedDuration: 1
|
m_HasFixedDuration: 1
|
||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
@@ -62,7 +63,7 @@ AnimatorStateMachine:
|
|||||||
m_ChildStates:
|
m_ChildStates:
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: 2482721225991305447}
|
m_State: {fileID: 2482721225991305447}
|
||||||
m_Position: {x: 330, y: 310, z: 0}
|
m_Position: {x: 300, y: 250, z: 0}
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: -5762510348686555522}
|
m_State: {fileID: -5762510348686555522}
|
||||||
m_Position: {x: 670, y: 290, z: 0}
|
m_Position: {x: 670, y: 290, z: 0}
|
||||||
@@ -82,11 +83,11 @@ AnimatorController:
|
|||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_Name: New Animator Controller
|
m_Name: Rhinos
|
||||||
serializedVersion: 5
|
serializedVersion: 5
|
||||||
m_AnimatorParameters:
|
m_AnimatorParameters:
|
||||||
- m_Name: isIdle
|
- m_Name: Hit
|
||||||
m_Type: 4
|
m_Type: 9
|
||||||
m_DefaultFloat: 0
|
m_DefaultFloat: 0
|
||||||
m_DefaultInt: 0
|
m_DefaultInt: 0
|
||||||
m_DefaultBool: 0
|
m_DefaultBool: 0
|
||||||
@@ -111,7 +112,7 @@ AnimatorState:
|
|||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_Name: WhiteRhino_Skelmesh|AA_WhiteRhino_Loco_Idle_Normal
|
m_Name: Idle
|
||||||
m_Speed: 1
|
m_Speed: 1
|
||||||
m_CycleOffset: 0
|
m_CycleOffset: 0
|
||||||
m_Transitions:
|
m_Transitions:
|
||||||
@@ -131,3 +132,25 @@ AnimatorState:
|
|||||||
m_MirrorParameter:
|
m_MirrorParameter:
|
||||||
m_CycleOffsetParameter:
|
m_CycleOffsetParameter:
|
||||||
m_TimeParameter:
|
m_TimeParameter:
|
||||||
|
--- !u!1101 &5211168254593058196
|
||||||
|
AnimatorStateTransition:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name:
|
||||||
|
m_Conditions: []
|
||||||
|
m_DstStateMachine: {fileID: 0}
|
||||||
|
m_DstState: {fileID: 2482721225991305447}
|
||||||
|
m_Solo: 0
|
||||||
|
m_Mute: 0
|
||||||
|
m_IsExit: 0
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransitionDuration: 0.25
|
||||||
|
m_TransitionOffset: 0
|
||||||
|
m_ExitTime: 0.8947368
|
||||||
|
m_HasExitTime: 1
|
||||||
|
m_HasFixedDuration: 1
|
||||||
|
m_InterruptionSource: 0
|
||||||
|
m_OrderedInterruption: 1
|
||||||
|
m_CanTransitionToSelf: 1
|
||||||
Binary file not shown.
@@ -14,6 +14,7 @@ Material:
|
|||||||
m_ValidKeywords:
|
m_ValidKeywords:
|
||||||
- N_F_DDMD_ON
|
- N_F_DDMD_ON
|
||||||
- N_F_EAL_ON
|
- N_F_EAL_ON
|
||||||
|
- N_F_LLI_ON
|
||||||
- N_F_O_ON
|
- N_F_O_ON
|
||||||
- N_F_RDC_ON
|
- N_F_RDC_ON
|
||||||
- N_F_RELGI_ON
|
- N_F_RELGI_ON
|
||||||
@@ -505,8 +506,8 @@ Material:
|
|||||||
- _IDMaskPrior8: 0
|
- _IDMaskPrior8: 0
|
||||||
- _IgnoreEncryption: 0
|
- _IgnoreEncryption: 0
|
||||||
- _Invisible: 0
|
- _Invisible: 0
|
||||||
- _LLI_Max: 1
|
- _LLI_Max: 2
|
||||||
- _LLI_Min: 0
|
- _LLI_Min: 1
|
||||||
- _LigIgnoYNorDir: 0
|
- _LigIgnoYNorDir: 0
|
||||||
- _LightAffectOutlineColor: 0
|
- _LightAffectOutlineColor: 0
|
||||||
- _LightAffectRimLightColor: 0
|
- _LightAffectRimLightColor: 0
|
||||||
@@ -596,7 +597,7 @@ Material:
|
|||||||
- _N_F_GLOT: 0
|
- _N_F_GLOT: 0
|
||||||
- _N_F_HDLS: 0
|
- _N_F_HDLS: 0
|
||||||
- _N_F_HPSS: 0
|
- _N_F_HPSS: 0
|
||||||
- _N_F_LLI: 0
|
- _N_F_LLI: 1
|
||||||
- _N_F_MC: 0
|
- _N_F_MC: 0
|
||||||
- _N_F_MSSOLTFO: 0
|
- _N_F_MSSOLTFO: 0
|
||||||
- _N_F_NFD: 0
|
- _N_F_NFD: 0
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ Material:
|
|||||||
m_ValidKeywords:
|
m_ValidKeywords:
|
||||||
- N_F_DDMD_ON
|
- N_F_DDMD_ON
|
||||||
- N_F_EAL_ON
|
- N_F_EAL_ON
|
||||||
|
- N_F_LLI_ON
|
||||||
- N_F_O_ON
|
- N_F_O_ON
|
||||||
- N_F_RDC_ON
|
- N_F_RDC_ON
|
||||||
- N_F_RELGI_ON
|
- N_F_RELGI_ON
|
||||||
@@ -502,8 +503,8 @@ Material:
|
|||||||
- _IDMaskPrior8: 0
|
- _IDMaskPrior8: 0
|
||||||
- _IgnoreEncryption: 0
|
- _IgnoreEncryption: 0
|
||||||
- _Invisible: 0
|
- _Invisible: 0
|
||||||
- _LLI_Max: 1
|
- _LLI_Max: 2
|
||||||
- _LLI_Min: 0
|
- _LLI_Min: 1
|
||||||
- _LigIgnoYNorDir: 0
|
- _LigIgnoYNorDir: 0
|
||||||
- _LightAffectOutlineColor: 0
|
- _LightAffectOutlineColor: 0
|
||||||
- _LightAffectRimLightColor: 0
|
- _LightAffectRimLightColor: 0
|
||||||
@@ -593,7 +594,7 @@ Material:
|
|||||||
- _N_F_GLOT: 0
|
- _N_F_GLOT: 0
|
||||||
- _N_F_HDLS: 0
|
- _N_F_HDLS: 0
|
||||||
- _N_F_HPSS: 0
|
- _N_F_HPSS: 0
|
||||||
- _N_F_LLI: 0
|
- _N_F_LLI: 1
|
||||||
- _N_F_MC: 0
|
- _N_F_MC: 0
|
||||||
- _N_F_MSSOLTFO: 0
|
- _N_F_MSSOLTFO: 0
|
||||||
- _N_F_NFD: 0
|
- _N_F_NFD: 0
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ Material:
|
|||||||
m_ValidKeywords:
|
m_ValidKeywords:
|
||||||
- N_F_DDMD_ON
|
- N_F_DDMD_ON
|
||||||
- N_F_EAL_ON
|
- N_F_EAL_ON
|
||||||
|
- N_F_LLI_ON
|
||||||
- N_F_O_ON
|
- N_F_O_ON
|
||||||
- N_F_RDC_ON
|
- N_F_RDC_ON
|
||||||
- N_F_RELGI_ON
|
- N_F_RELGI_ON
|
||||||
@@ -502,8 +503,8 @@ Material:
|
|||||||
- _IDMaskPrior8: 0
|
- _IDMaskPrior8: 0
|
||||||
- _IgnoreEncryption: 0
|
- _IgnoreEncryption: 0
|
||||||
- _Invisible: 0
|
- _Invisible: 0
|
||||||
- _LLI_Max: 1
|
- _LLI_Max: 2
|
||||||
- _LLI_Min: 0
|
- _LLI_Min: 1
|
||||||
- _LigIgnoYNorDir: 0
|
- _LigIgnoYNorDir: 0
|
||||||
- _LightAffectOutlineColor: 0
|
- _LightAffectOutlineColor: 0
|
||||||
- _LightAffectRimLightColor: 0
|
- _LightAffectRimLightColor: 0
|
||||||
@@ -593,7 +594,7 @@ Material:
|
|||||||
- _N_F_GLOT: 0
|
- _N_F_GLOT: 0
|
||||||
- _N_F_HDLS: 0
|
- _N_F_HDLS: 0
|
||||||
- _N_F_HPSS: 0
|
- _N_F_HPSS: 0
|
||||||
- _N_F_LLI: 0
|
- _N_F_LLI: 1
|
||||||
- _N_F_MC: 0
|
- _N_F_MC: 0
|
||||||
- _N_F_MSSOLTFO: 0
|
- _N_F_MSSOLTFO: 0
|
||||||
- _N_F_NFD: 0
|
- _N_F_NFD: 0
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ Material:
|
|||||||
m_ValidKeywords:
|
m_ValidKeywords:
|
||||||
- N_F_DDMD_ON
|
- N_F_DDMD_ON
|
||||||
- N_F_EAL_ON
|
- N_F_EAL_ON
|
||||||
|
- N_F_LLI_ON
|
||||||
- N_F_O_ON
|
- N_F_O_ON
|
||||||
- N_F_RDC_ON
|
- N_F_RDC_ON
|
||||||
- N_F_RELGI_ON
|
- N_F_RELGI_ON
|
||||||
@@ -504,8 +505,8 @@ Material:
|
|||||||
- _IDMaskPrior8: 0
|
- _IDMaskPrior8: 0
|
||||||
- _IgnoreEncryption: 0
|
- _IgnoreEncryption: 0
|
||||||
- _Invisible: 0
|
- _Invisible: 0
|
||||||
- _LLI_Max: 1
|
- _LLI_Max: 2
|
||||||
- _LLI_Min: 0
|
- _LLI_Min: 1
|
||||||
- _LigIgnoYNorDir: 0
|
- _LigIgnoYNorDir: 0
|
||||||
- _LightAffectOutlineColor: 0
|
- _LightAffectOutlineColor: 0
|
||||||
- _LightAffectRimLightColor: 0
|
- _LightAffectRimLightColor: 0
|
||||||
@@ -595,7 +596,7 @@ Material:
|
|||||||
- _N_F_GLOT: 0
|
- _N_F_GLOT: 0
|
||||||
- _N_F_HDLS: 0
|
- _N_F_HDLS: 0
|
||||||
- _N_F_HPSS: 0
|
- _N_F_HPSS: 0
|
||||||
- _N_F_LLI: 0
|
- _N_F_LLI: 1
|
||||||
- _N_F_MC: 0
|
- _N_F_MC: 0
|
||||||
- _N_F_MSSOLTFO: 0
|
- _N_F_MSSOLTFO: 0
|
||||||
- _N_F_NFD: 0
|
- _N_F_NFD: 0
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ Material:
|
|||||||
m_ValidKeywords:
|
m_ValidKeywords:
|
||||||
- N_F_DDMD_ON
|
- N_F_DDMD_ON
|
||||||
- N_F_EAL_ON
|
- N_F_EAL_ON
|
||||||
|
- N_F_LLI_ON
|
||||||
- N_F_O_ON
|
- N_F_O_ON
|
||||||
- N_F_RDC_ON
|
- N_F_RDC_ON
|
||||||
- N_F_RELGI_ON
|
- N_F_RELGI_ON
|
||||||
@@ -502,8 +503,8 @@ Material:
|
|||||||
- _IDMaskPrior8: 0
|
- _IDMaskPrior8: 0
|
||||||
- _IgnoreEncryption: 0
|
- _IgnoreEncryption: 0
|
||||||
- _Invisible: 0
|
- _Invisible: 0
|
||||||
- _LLI_Max: 1
|
- _LLI_Max: 2
|
||||||
- _LLI_Min: 0
|
- _LLI_Min: 1
|
||||||
- _LigIgnoYNorDir: 0
|
- _LigIgnoYNorDir: 0
|
||||||
- _LightAffectOutlineColor: 0
|
- _LightAffectOutlineColor: 0
|
||||||
- _LightAffectRimLightColor: 0
|
- _LightAffectRimLightColor: 0
|
||||||
@@ -593,7 +594,7 @@ Material:
|
|||||||
- _N_F_GLOT: 0
|
- _N_F_GLOT: 0
|
||||||
- _N_F_HDLS: 0
|
- _N_F_HDLS: 0
|
||||||
- _N_F_HPSS: 0
|
- _N_F_HPSS: 0
|
||||||
- _N_F_LLI: 0
|
- _N_F_LLI: 1
|
||||||
- _N_F_MC: 0
|
- _N_F_MC: 0
|
||||||
- _N_F_MSSOLTFO: 0
|
- _N_F_MSSOLTFO: 0
|
||||||
- _N_F_NFD: 0
|
- _N_F_NFD: 0
|
||||||
|
|||||||
8
Assets/05_Textures/blackjack/game/card.meta
Normal file
8
Assets/05_Textures/blackjack/game/card.meta
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ca9ac2877cd844a49833326411100efa
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Back.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Back.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Back.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Back.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: df61e4ad7a5470c4d983efe9259597d6
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Club10.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Club10.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Club10.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Club10.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3432269cc2a47054fa1c31d1114706ad
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Club2.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Club2.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Club2.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Club2.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 7376720b41fce7747a0e0c48491ab883
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Club3.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Club3.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Club3.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Club3.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 01478c8c5ae5ff6418bfff208b842f1c
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Club4.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Club4.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Club4.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Club4.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3f46a5b268e442e4aa7b62deed5e5a54
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Club5.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Club5.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Club5.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Club5.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 452869a19d5b3274c915ea7c99ad3493
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Club6.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Club6.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Club6.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Club6.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 360e65783b33097438f549bb688669d5
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Club7.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Club7.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Club7.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Club7.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e39409de80bbe064aa5ba43ef67d9fb8
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Club8.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Club8.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Club8.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Club8.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 41d0ff0beb8ae734da72e151599c8211
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Club9.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Club9.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Club9.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Club9.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 18b5b2399bb43034d92a583813411c53
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_ClubAce.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_ClubAce.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_ClubAce.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_ClubAce.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 242a868e4d1e40948acb06f3abf5f4fe
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_ClubJack.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_ClubJack.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_ClubJack.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_ClubJack.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a2f15c144687e0142953d27ebfc4dbf4
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_ClubKing.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_ClubKing.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_ClubKing.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_ClubKing.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: da78b0faa0a7bf34587e4d2e6f5987b6
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_ClubQueen.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_ClubQueen.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_ClubQueen.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_ClubQueen.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: baaee26636853124cad72158dcc4c2ed
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond10.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond10.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Diamond10.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Diamond10.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 44d6d2a755c4cd0489c2722d851f4567
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond2.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond2.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Diamond2.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Diamond2.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: cfaa323cde42fe943a713ccffee5e242
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond3.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond3.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Diamond3.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Diamond3.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d2fc3f2a7a88e6343ad58654345a1697
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond4.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond4.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Diamond4.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Diamond4.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 9b43cffc2d0eec74e8d1b3dfc74eb48b
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond5.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond5.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Diamond5.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Diamond5.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f7e728e5265d70c4cbb3c405022675f0
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond6.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond6.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Diamond6.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Diamond6.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 172c7b8aa40688e4c875607db9ed556f
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond7.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond7.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Diamond7.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Diamond7.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 51587bb8756900e4ab500e523b64cf2e
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond8.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond8.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Diamond8.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Diamond8.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 51d9e94bb03c7684a8774237f83c11b1
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond9.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Diamond9.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Diamond9.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Diamond9.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e29a3fc2593c573418208ae9ef51f277
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_DiamondAce.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_DiamondAce.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_DiamondAce.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_DiamondAce.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 068e63b5577133642941440dc68621fe
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_DiamondJack.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_DiamondJack.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_DiamondJack.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_DiamondJack.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f365508e508195447a9c79eb3ffed33e
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_DiamondKing.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_DiamondKing.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_DiamondKing.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_DiamondKing.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3197c4c15d3d79a45bcdc396dc74ff94
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_DiamondQueen.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_DiamondQueen.png
LFS
Normal file
Binary file not shown.
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 664edf5dbc0276a4f8ed8ddc3f9a89fd
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Heart10.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Heart10.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Heart10.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Heart10.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e67742183f1a8c14db12e5c82a4aae46
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Heart2.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Heart2.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Heart2.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Heart2.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 37e8f1876df42654ba0ad596e318f01b
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Heart3.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Heart3.png
LFS
Normal file
Binary file not shown.
130
Assets/05_Textures/blackjack/game/card/Card_Heart3.png.meta
Normal file
130
Assets/05_Textures/blackjack/game/card/Card_Heart3.png.meta
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d770c45b25b87014d93ee66d85c508d7
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 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: 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
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/05_Textures/blackjack/game/card/Card_Heart4.png
LFS
Normal file
BIN
Assets/05_Textures/blackjack/game/card/Card_Heart4.png
LFS
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user