Intro 제목은 조금 그럴듯해 보이지만, 사실 개발을 하면서 생기는 구조적인 문제들을 해결할 수 있는 방법들 도구들을 소개하고, 연습하는 프로젝트이다. 사실, 앞으로 다룰 내용들은 문제에 대한 절대적인 정답이 될 수는 없다. 요구사항에 따라, 쉽게 말하면, 내가 현실화하려는 문제들에 따라 직면한 문제에 대해 대응할 방법은 다채롭게 변화할 수 있기 때문이다. 디자인 패턴은 단순히 우리가 그 솔루션을 숙고할 때 사용할 수 있는 도구들이다. 개인적으로 이를 공부하는 이유는 궁극적으로 개발 아키텍팅에 관심이 있고, 유니티 개발자로서 일을 하면서 퍼포먼스를 더욱 끌어올리고 싶다는 욕심이 생겼다. 이를 위한 방안으로서, 현재 친숙한 엔진인 unity로 게임 프로그래밍 아키텍처를 구현 해보고, 파고 들고자 한다. ..
이런 경우엔, defualt local group이 제대로 local로 설정이 되어있는 지 확인하자. 설령 되어 있더라도, 빌드 했을 때 defualt local group의 설정이 다르게 되어있었을 경우도 있다. 어드레서블을 default local group을 remote인상태로 빌드하고, 어드레서블 빌드는 local로 한다면, 만약 defualt local group에 어드레서블이 포함되어있는 에셋이 있고, 그 에셋을 사용하는 곳이 있다면, 로드할때, Failed to read data 가 나온다. library→com.unity.addressable → aa → android → android 안에 번들을 읽어 오려고 한다. (나의 경우, standard shader번들을 읽어 들어오려고 했다.)..
권한 문제로 global install이 안될 떄, 해결 방안 -디렉토리를 만들어서 그안에, export PATH=~/.npm-global/bin:$PATH 의 내용을 담고 있는 파일을 만들어주면 된다. mkdir ~/.npm-global npm config set prefix '~/.npm-global' nano ~/.profile 여기서, export PATH=~/.npm-global/bin:$PATH 추가 npm install --global yarn 성공
현재 재직중인 회사에서, 자율 회로 조립 시뮬레이션 컨텐츠를 추가 하기로 하였고, 1월 중순에 1차 마무리가 되었다. 정리를 하자하자 하고 나서 이제야 하게 되었는데, 바로바로 정리하는 습관을 기르도록 해야겠다. 작업 영상 Structure(구조) 대략적인 구조를 그리자면 위와 같다. 위에서 부터 전체적인 그림부터 그밑의 작은 부분들로 구분해보도록 하겠다. page(UI) 기본적으로 ui를 위한 frame구조가 있다. 그중 비즈니스 로직의 주된 처리를 담당하는 controller에서 주요 로직들을 담당하고 있다. Input Contoller, Assembly Controller들을 할당 하고, ui의 이벤트가 일어났을 때, 그에 걸맞는 시뮬레이션 모델들을 조작한다. page에서는 주로 ui의 변경에 이용..
매달초 개발자 지인들과 함께 회고를 진행하기로 하였다. 동기부여를 받는 데에 있어 타인과의 교류 만한게 없는 것 같다. 가보자고 HTML 삽입 미리보기할 수 없는 소스 TDD 환경 구축 (진행형) 기존 프로젝트에는 테스트환경이 구축 되어있지 않다. 테스트를 하기 위해서는 play mode에서 하나씩 타고 들어가야하고, Debug, Break Point를 적극적으로 활용해야한다. api가 잘 돌아가는 지 확인 하기 위해서는 result를 찍어 보거나 postman을 활용해야한다. 이런 불편함을 해소하기 위해서 유니티 내부 테스트 에셋을 사용하기 결정 하였다. Test runner 유닛 테스트를 위한 도구이다. 현재 test runner를 사용하기 위해, assembly definition설정을 해줘야 하는..
먼저, 핸드폰을 랩탑에 연결한다.빌드세팅에서 connected device에 기기가 뜬다면, 성공. 그다음, preferences에 들어가 sdk path를 복사 해준후, 명령 prompt를 열어서 cd [sdk path, 방금 본사한 folder path] 를 입력하여 폴더이동을 해준다. 그후 dir을 입력하여 platform-tools가 제대로 있는지 확인해준다. adb tcpip 5555 입력. adb connect 자신아이피:5555(포트) 를 입력해준다. 만약, 제대로 설치가 안되어 있거나 adb가 없다면, brew cask install android-platform-tools을 해준다. (필자는 버전이 바뀌었는지 brew install -cask android-platform-tools)로 ..
안드로이드 타겟 버전을 31로 올림과 동시에 오류가 생기게 되었다. 유니티 프로젝트에 안드로이드 플러그인에서 처리해주는 usb 권한 할당에 문제가 생겼던 것. Targeting S+일 경우, PendingIntent.Immutable 혹은 PendingIntent가 변경 될수 있는 경우엔 PendingIntent.mutable을 사용하라고 경고가 나왔다. PendingIntent pending = PendingIntent.getBraodcast(UnityPlayer.currentActivity, 0, new Intent(Action_USB_Permission, PendingIntent.Flag_Mutable); 로 바꾸어 해결. 그외, UnityPlayer.sendMessage 오류는 sendmassag..
회고를 시작하기에 앞서.. 인생 처음 지나간 해에 대한 회고를 해보게 되었다. 이미 지나가 버린 해에 대해서 다시 생각을 하게 되면, 미련이 남게 될까 하여 안했던것도 있는 것같다. 하지만, 지난 12월 18일에 회사에서 자체로 진행한 개발자 회고 모임을 통해, 나도 한번 해봐야겠다라는 생각이 들게 하였다. 회고를 함으로서, 내가 어떤 심경의 변화를 얻게 될지, 앞으로의 삶에 어떤 계기가 될지, 아직 모르지만, 해봐야만 알수 있는 것이 있기에, 지난 1년을 돌아보려고 한다. 군복무의 끝 2020년 7월 남들보다 늦은 나이에 군입대를 하게 되었다. 다행인지 불행인지 자대 배치후 행정보급관의 눈에 들어 보급병으로 차출되어, 군복무를 하게 되었고, 코로나로 인해 훈련도 적어 비교적 육체적 고통이 덜한 복무 생..