클라이언트 프로그래머의 일기/신입 클라이언트 프로그래머의 일기 28

모바일 게임 Wifi 기능 연동 시 사용 할 함수들.

만약 게임에 기능을 추가하게 된다면 사용 하려고 만든 함수들 입니다. 1. 와이파이 세기 측정.(API Level에 따라 2개로 나뉨.) // Android API 30 미만에서 사용 할 함수 ( 20/10/26 기준 최신 API는 29 입니다.) private static int GetSignalLevel(int numberOfLevels) { using (var activity = new AndroidJavaClass("com.unity3d.player.UnityPlayer") .GetStatic("currentActivity")) { var wifiManager = activity.Call("getSystemService", "wifi"); var wifiInfo = wifiManager.Call(..

모바일 게임에 보이는 Wifi 아이콘 어떻게 구현하는걸까?

몇몇 모바일 게임을 보면 화면에 현재 와이파이의 연결세기가 나타나는 것을 볼 수 있습니다. 이 부분을 유니티 쪽에 물어보니까 따로 기능이 없고 스스로 구현해야 한다고 해서 조사를 했습니다. 우선 AndroidStudio에 와이파이 세기를 가져올 수 있다는 것을 확인할 수 있었습니다. 단 문제는 이제 AndroidStudio에서 코드를 친 후 그것을 Unity로 가져와서 게임에 구현시키는 부분입니다. 우선 간단한 Toast 문구 띄우기는 성공했습니다. 이제 Android Studio에 있는 WifiManager에서의 calculateSignalLevel(int rssi) 함수를 사용해서 신호 품질 등급을 반환받고 그것을 유니티에서 wifi 아이콘으로 변환해서 상단 구석에 wifi가 실시간으로 몇칸으로 바뀌..

c# summary 기능이란?

코드를 작성 하고 // 주석처리를 하여도 되지만 간혹 클래스로 만들어 외부에서 생성, 제어 하게될 땐 해당 코드를 열어 다시 보기가 너무 귀찮다. 그때 사용하는것이 Summary 입니다. /// /// SummaryTest /// /// 이름설정테스트 public void Test(int abc) { int a = abc; } 위와 같이 간단한 함수를 하나 만들어 준 다음 Singleton 패턴으로 다른 스크립트에서 해당 함수를 불러 왔을 때 위와 같이 함수 이름 설명과 해당 변수에 대한 설명까지 볼 수 있습니다.

C# Dictionary ContainsKey와 TryGetValue 뭐가 더 효율적인가?

1. Dictonary.ContainsKey(TKey) 메서드는 Dictionary에 지정한 키가 포함되어 있는지 여부를 확인하는 메서드 입니다. Boolean으로 반환하며, 키가 있는 요소가 포함되어 있으면 true, 없으면 false를 반환합니다 2. Dictionary.TryGetValue(TKey, TValue) 메서드는 Dictionary에 지정한 키가 포함되어 있는지 여부를 확인하는 메서드 입니다. 마찬가지로 Boolean으로 반환하며, 키가 있는 요소가 포함되어 있으면 true, 없으면 false를 반환합니다 아래 코드로 벤치 마크 결과 TryGetValue가 약간 더 빨랐습니다. static void Main(string[] args) { const int size = 1000000; va..