본문 바로가기
TIL

01.18 (TIL-Unity)

by 오랑이귀엽다 2024. 1. 18.

인벤토리 시스템의 향상, UI 상호작용의 개선

주요 기능 및 코드:

1. 아이템 슬롯 UI 색상 변경

  • 목적: 사용자가 아이템을 선택하거나 조합 과정에 있는 아이템을 시각적으로 구분하기 위함.
  • 사용한 스크립트: SW_ItemSlotUI
  • 코드 구현:
더보기

public void SetSlotColor(Color color)
{
    // 아이템 슬롯의 배경색 변경
    background.color = color;
}

사용 이유: 사용자 인터페이스의 직관성을 향상시키고, 사용자의 현재 선택이나 조합 상태를 명확히 표시하기 위함.

 

 

 

2. 조합 과정 초기화

  • 목적: 인벤토리 닫힘 또는 조합 불가능 상황 시 조합 과정 초기화
  • 사용한 스크립트: SW_Inventory
  • 코드 구현:
더보기

private void ResetMixingProcess()
{
    // 조합 과정 초기화 및 슬롯 색상 리셋
    mixingItem = null;
    ResetAllSlotColors();
    isMixing = false;
}

사용 이유: 사용자가 조합 과정을 중단하거나 실패했을 때, 혼란을 방지하고 조합 시스템을 초기 상태로 되돌리기 위함.

 

 

트러블슈팅:

  • 문제 1: 조합 로직 오류
    • 왜(Why): 아이템 조합 시 예상치 못한 결과가 발생하는 이 문제는 게임 내 아이템 시스템의 정확성과 사용자 경험에 직접적인 영향을 줍니다. 이는 사용자가 게임을 즐기는 데 있어 혼란을 야기하고, 게임의 몰입도를 떨어뜨릴 수 있습니다.
    • 어떻게(How): 문제의 원인을 파악하기 위해, 아이템 조합 시 사용되는 드랍 프리팹 설정을 점검하였습니다. 이 과정에서 설정의 불일치를 발견하였고, 이를 정확하게 설정하는 방법으로 접근하였습니다.
    • 무엇(What): 드랍 프리팹을 정확히 설정하여 조합 로직이 의도한 대로 동작하도록 수정함으로써, 사용자가 예상하는 결과를 얻을 수 있게 되었습니다.
    문제 2: NullReferenceException 오류
    • 왜(Why): 코드 실행 시 Null 참조 오류는 애플리케이션의 안정성과 신뢰성에 중대한 영향을 미칩니다. 이러한 오류는 사용자 경험을 저하시키고, 애플리케이션의 품질에 대한 인상을 나쁘게 만듭니다.
    • 어떻게(How): 유니티를 재시작하여 문제를 일시적으로 해결하는 것으로 시작하였습니다. 이후, 로직 순서를 조정하고 오브젝트 참조를 명확히 함으로써 문제의 근본적인 원인을 해결하였습니다.
    • 무엇(What): 로직 순서 조정 및 참조 명확화를 통해 Null 참조 오류를 방지하고, 애플리케이션의 안정성을 높였습니다.
    문제 3: 아이템 조합 로직 수정
    • 왜(Why): 아이템 조합 시 예상치 못한 결과 및 조합 순서에 따른 결과 변동은 사용자가 시스템을 이해하고 예측하기 어렵게 만들며, 게임 플레이에 부정적인 영향을 미칩니다.
    • 어떻게(How): 조합 로직을 분석하여, 아이템 타입만을 기준으로 조합 가능 여부를 판단하는 것이 문제의 원인임을 파악하였습니다. 이를 해결하기 위해, 아이템의 고유 식별자나 이름을 추가적인 기준으로 사용하는 방법을 도입하였습니다.
    • 무엇(What): 아이템의 타입과 고유 식별자를 모두 고려하여 조합 가능 여부를 판단하도록 로직을 수정함으로써, 예상 가능하고 정확한 조합 결과를 제공하게 되었습니다.

'TIL' 카테고리의 다른 글

01.22 (TIL-Unity)  (0) 2024.01.22
01.19(TIL-Unity)  (0) 2024.01.19
01.17 (TIL-Unity)  (0) 2024.01.17
01.16 (TIL-Unity)  (1) 2024.01.16
01.15 (TIL-Unity)  (0) 2024.01.15