콤마(,) 때문에 게임이 멈춘다고? Unity 문자열 파싱 오류와 InvariantCulture의 중요성
·
Unity
게임 개발 중, 특정 국가의 유저에게서 `게임이 튕긴다`, `버그 때문에 앱이 종료된다`는 보고를 받았다면 가장 당황스러울 것이다. 특히 이 문제가 터키, 러시아 등 일부 지역에서만 문자열 파싱 과정 중에 발생한다면, 디버깅은 미궁에 빠지기 쉽다.대부분의 경우, 이 현상은 문화권마다 다른 소수점 구분 기호(Decimal Separator) 때문에 발생한다. 유니티(Unity)에서 문자열을 숫자로 변환할 때, 시스템의 지역 설정에 따라 `콤마(,)`와 `마침표(.)` 중 어떤 것을 소수점으로 인식할지가 달라지기 때문이다. 이 글에서는 이 미스터리한 버그의 원인을 파헤치고, 모든 문화권에서 안전하게 문자열을 파싱하는 `CultureInfo.InvariantCulture` 사용법을 알아본다. 문화권별 소수점..
Unity C# 스크립트에서 summary 주석 활용하여 코드 가독성 높이는 방법
·
Unity
Unity로 개발할 때, C# 스크립트는 프로젝트의 핵심 역할을 한다. 스크립트가 복잡해질수록 코드의 의도를 명확히 파악하는 것은 매우 중요해진다. 이때 `summary` 주석은 단순한 설명 이상의 강력한 도구로 활용된다. 이 글에서는 Unity 개발자들이 summary 주석을 어떻게 효과적으로 사용하고, 그 이점을 최대한 활용하는 방법에 대해 기술한다.summary 주석이 중요한 이유summary 주석은 C#의 XML 문서 주석 형식 중 하나로, 클래스, 메서드, 프로퍼티, 필드 등에 대한 간결한 설명을 제공한다. Unity 개발자에게 특히 중요한 이유는 다음과 같다.`자동 완성 기능 강화`: VS Code에서 코드를 작성할 때, summary 주석은 해당 요소에 대한 설명을 툴팁 형태로 즉시 보여준다..