본 글은 [새로운 목표 - PC로 제어가능한 닌텐도 스위치 컨트롤러 만들기]와 [PC로 제어가능한 닌텐도 스위치 컨트롤러 제작기 - 3. 예제 코드 실행 및 트위치 채팅 연동 테스트]에서 이어지는 글이다. 앞선 트위치 채팅 연동 테스트에서 사용한 파이썬 코드의 아쉬운 점은 컨트롤러 제어와 채팅 수신 등을 모두 하나의 python 프로세스에서 한다는 것이었다. 프로세스, 쓰레드 관리, 에러 발생 시 프로세스가 재시작 하는 것 등을 효과적으로 관리하고, 개발 편의를 높이기 위하여 컨트롤러 부분을 제외한 나머지는 nodejs 를 이용하여 개발하기로 마음먹었다.이번 주말의 개발 목표 Twitch Plays 에서 시청자에게 보여주어야 하는 것들은 Chatbox, Game Screen, 배경 이미지, 현재 동작 모..
간단한 서버 사이드 렌더링 프로그램 제작을 위해 처음으로 Next.js 를 사용하면서, 기본 Next.js 예제인 page/index.js 에다가 테스트겸 이런저런 패키지와 예제 코드를 가져다가 붙였다. 사용자가 페이지에 접속하면 제3의 백그라운드 어플리케이션을 실행시키려는 의도였다. 그런데 테스트를 해보니 몇몇 모듈을 찾을 수 없다며 에러가 발생했다. 대표적으로 fs, net, tls 같은 모듈과 관련된 오류가 있었다.Failed to compile ./node_modules/twitch-bot/lib/bot.js Module not found: Can't resolve 'tls' in 'F:\Google Drive\3. Hobbies\switch_controller\nodejs_server\node_..
앞선 글에서 Python 개발 환경을 구성하였고, 이번 글에서는 실제 코드를 실행하여 작동이 되는 것을 확인하는 과정을 정리하였다. 배선 연결 일단 FT232RL USB to UART(Serial) 모듈과 아두이노 우노 R3간 케이블을 아래 사진과 같이 연결해주었다. (RX-RX(로 향하는), TX-TX(가 들어오는), VCC-5V, GND-GND) 코드 수정https://github.com/ItsDeidara/CommunityController 에서 코드를 내려받아 개발 환경을 구축하고, Twitch Plays Nintendo Switch/CommunityController v3/BOTW/ 경로의 코드를 테스트삼아 RUN 해보기로 계획했다. 다만 코드를 실행해보니 몇 군데 수정할 부분이 있었고, 이것을..
내가 테스트를 위해 사용할 코드는 Python 언어로 작성된 ItsDeidara / CommunityController 이다. 따라서 Python 개발 환경을 구축해야한다. 혹시 이 글을 보며 따라할 사람이 있을지는 모르겠지만 Python 을 모르는 사용자에게 모든 내용을 일일히 설명할 수는 없어서 간단히만 정리했다. 아무래도 Python 을 아예 모르는 사용자는 본 단계부터 따라하기 어려울 수도 있겠다. 1. Anaconda 가상환경 구축 및 필요 패키지 설치효과적인 버전 관리를 위해 Anaconda 를 설치하는 것을 권장한다. 나는 이전부터 Anaconda 를 사용하던 관계로 설치 과정은 본 포스트에 적지 않았다. 구글에 [Python Anaconda 설치]로 검색하면 많은 결과가 나오니 찾아보아도 ..
앞선 글에서, PC로 제어가능한 닌텐도 스위치 컨트롤러를 만드는 것을 간략하게 계획하고 부품을 주문했었다. 부품 도착부품 도착!!! FT232RL USB to UART(Serial) 모듈과 아두이노 우노 R3 호환보드이다.아두이노에 POKKEN CONTROLLER 펌웨어 설치하기일단 가장 먼저 아두이노에 POKKEN CONTROLLER 를 역설계한 내용을 바탕으로 한 펌웨어를 설치해주어야 했다. 이를 위한 과정은 Youtube 의 Saravanan AL 가 업로드한 ARDUINO- Upgrading USB FIRMWARE using FLIP 라는 제목의 동영상을 참고하여 진행했다.1. FLIP 다운로드 및 설치 아래의 링크에서 PC에 FLIP 을 다운로드 받아 설치했다.https://www.microch..
닌텐도 스위치의 신작 "모여봐요 동물의 숲"이 2020년 3월 20일에 출시될 예정이다. 지금으로부터 약 한 달 반 후이다. 얼마 전 시연 동영상을 보았는데 일단 시연상으로는 조작이 복잡하지 않고 시점이 고정되어 있어 Twitch Plays 처럼 커뮤니티 플레이를 하기 좋아보이는 점들이 몇 가지 있었다.Twitch Plays 란 트위치 채팅창에 left, right 등의 지정된 키워드를 입력하면 게임 컨트롤러의 해당 키가 눌려, 시청자들이 채팅 참여를 통해 함께 플레이를 할 수 있는 것을 말한다. 이에 대한 상세한 이해는 나무위키의 Twitch Plays Pokémon 문서 참고. 최근 라이브 채팅을 인식하여 시청자들이 이상형 월드컵에 투표할 수 있는 시스템을 javascript 로 만든 경험이 있는데,..
웹브라우저 client 단에서 NSFW(Not Safe For Work) 또는 누드 이미지를 감지할 수 있는 두가지 자바스크립트 라이브러리에 대해 정리해보았다. 이러한 것을 조사한 개인적인 이유는 채팅에 올라오는 이미지의 NSFW 여부를 판별하여 자동으로 노출/숨김 처리를 할 수 있는 브라우저 확장기능의 개발을 위해서이다. nude.jsGithub 링크: https://github.com/pa7/nude.js/데모 페이지: https://www.patrick-wied.at/static/nudejs/demo/이미지(또는 비디오)에 사람의 피부색에 해당하는 픽셀 영역을 분석하여 누드 이미지인지를 판별한다. 위 라이브러리는 2005년에 발표된 이 논문을 기반으로 만들어졌는데, 논문에서 주장하는 탐지율은 92%..
한국어 버전 포스팅: https://nomo.asia/448 With the release of Monster Hunter World Iceborn, I returned to Monster Hunter in about a year, but the following message appeared and the game didn't start properly. Failed to read saved data for Monster Hunter: Iceborne. Create new save data?The error persisted even after pressing No, I found a way to solve the problem after forcibly quitting the game without ..
본 문제는 2020년 1월 17일 Ver.10.12.01 에서 수정되었습니다. (맘-타로트가 추가된 2018년 10월 30일(UTC 23:00)의 업데이트보다 이전의 상태로 플레이했던 저장 데이터를 Ver.10.12.00에 업데이트 한 경우 저장 데이터를 인계할 수 없는 오류가 수정됨.)따라서 현 시점에서 클라이언트를 최신 버전으로 업데이트 한 경우 본 글에서 나타난 문제는 발생하지 않을 것입니다. 다만 본 글에 기재한 것과 다른 원인으로 저장 데이터가 파손될 시 동일한 오류 메시지가 출력될 수 있으며, 본 글에 적은 방법으로 해결을 보장하지 않으므로 참고바랍니다. 문제 발생 스팀판(PC) 몬스터헌터 월드 아이스본의 출시로 대략 1년만에 몬스터헌터에 복귀했는데, 아래와 같은 메시지가 나타나며 게임 시작이..
얼마 전 지인으로부터 DAFUL 로 구성한 동역학 모델의 해석 결과와 MATLAB 수식으로 작성한 모델의 결과에 차이가 있어 이유를 분석해달라는 부탁을 받았다. 결과적으로 말하자면 DAFUL 의 Numerical Damping 때문에 차이가 발생한 것이었다.본 문서에서는 Numerical Damping 이 무엇인지, 그리고 이 효과를 어떻게 줄이는지에 대해 설명하고자 한다. Numerical Damping 이란 무엇인가?Numerical Damping 이란 우리나라 말로 수치 감쇠라고 불린다. 이것은 시간 영역에서의 동역학 해석, 즉 시간 적분 시 고주파 성분의 영향을 줄이고 시스템의 안정성을 높여 해석 속도 향상을 도모하기 위해 사용된다. 더 쉬운 표현으로는 고주파 응답에만 감쇠를 적용하는 high-f..