전체 글 12

(일상) 지하철 역 어떤 아주머니

오늘은 유난히 마음에 걸리는 일이 있다. 바로 퇴근길에 뵌 지하철 역 어떤 아줌마 때문이다. 지하철 퇴근 길 버스로 갈아타려고 신풍역 7호선에서 환승을 하기위해 내렸다. 지하철 출구로 나가기 위해 출구 계단으로 향하고 있는데 딱 눈에 띄는 어떤 아주머니 한 분이 서계셨다. 자세히 아주머니를 들여다 보았는데, 원래 피부가 까무잡잡 하기보단 정말 너무 못씻은지 오래되어 까무잡잡한 모습에, 추워지고 있는 요즘 더 추워질텐데 추운 가을을 나기에는 초라하고 해져있는 아무렇게나 입은 듯 한 옷차림, 빼빼 마른 몸. 보통 이런경우 노숙자 라고 생각하고 그냥 평소처럼 지나치겠지만 왜 인지 모르게 그러지 못했다. 누가 봐도 도움이 필요한 사람이었다. 그리고 사람들은 그런 아주머니를 그냥 지나쳤다. 그리고 아주머니는 구걸..

sh life's/일상 2021.10.22

AssetBundle의 암호화/복호화

번들파일을 암호화하는 이유는 저작권이 있는 리소스를 보호하고 싶다거나 테이블 데이터를 보호하고 싶다거나.. 여러가지 이유가 있습니다. AssetStudio같은걸 사용하면 너무나 쉽게 에셋번들의 데이터를 추출해볼 수 있습니다. 이를 방지하려면 어떻게 해야할까요? AssetBundle의 파일 사이즈는 100mb가 될 수도 있고, 1GB가 될 수도 있기 때문에 암호화를 할때 주의해야 할점은 파일 전체를 암호화 한다기 보다, 파일의 특정 부분만을 암호화하여 정상적으로 파일이 열리지 않게 하는게 포인트입니다. 위 사진은 큐브 오브젝트를 번들로 만들어서 뽑은 뒤 파일을 헥스 에디터로 열어본 사진입니다. 큐브 오브젝트를 번들로 만들어서 뽑았을때 맨 앞에서 4개의 바이트가 55 6E 69 74 로 시작합니다. 어떻게 ..

[C#] BigInteger로 방치형 게임의 A~ZZ 같은 숫자단위 구현

개인적으로 만드는 라이브러리에서 테스트 할것이 생겨 방치형 돈 단위를 빠르게 구현해서 써야 할 일이 있어서 대강 생각나는대로 구현해 본 내용을 공유합니다. 이런 돈 단위를 구현할 수 있습니다. 아래 링크의 클래스를 복사해서 붙여넣어 사용하면 됩니다. 블로그 하단에 있는 소스코드는 오래 된 내용일 수 있으니 가능한 깃허브에 있는걸 가져다 쓰는게 좋습니다. 소스코드링크 GitHub - shlifedev/CAHGamesSDK: Will be Happy Indie Game Develop! Will be Happy Indie Game Develop! Contribute to shlifedev/CAHGamesSDK development by creating an account on GitHub. github.com..

프로그래밍/c# 2021.08.01 (2)

UGS는 유료 에셋으로 전환 될 예정입니다.

UGS는 에셋스토어/Itch.IO 에 유료로 등록될 예정입니다. 죄송합니다. UGS는 기존 오픈소스로 배포하였으나, 유지보수 및 리팩터링을 진행하게 되면서 유료로 변경하였습니다. 개인적인 시간을 많이 부어야 하다보니.. UGS의 업데이트를 계속하기 위해서는 필요한 조치였습니다 ㅜ.ㅜ 현재 에셋스토어는 영어문서 번역을 진행중이므로 현재 배포된 버전에서는 사용할 수 없습니다. 미리 구매가능하여 사용하고 싶으신 분들은 Itch.IO 구매페이지에서 구매 후 사용 가능합니다 블로그 포스팅을 읽어보시고, 본인에게 필요한 에셋이라고 생각되시면 구매해서 사용하시길 바랍니다 :) Itch 에서 구매하신 분들은 스토어에 등록될 공식 가격보다(22.99$) 보다 5달러 저렴하게 구매 가능합니다^^ 그리고! 순수 C# Con..

[c#] imgui.net의 네이티브(cimgui, cimplot..)를 직접 빌드해서 적용하기

Cmake/C/C++를 잘 모르시는 분들은 빌드하는데 에로사항이 있는 분들이 있는거 같아서 해당 튜토리얼을 작성했습니다. IMGUI가 필요한경우 C# 프로그래머들은 imgui의 c# 래퍼인 imgui.net을 사용하여 구현합니다. 다만 ImGUI.NET에 포함된 cimplot, cimnodes 같은 편한 라이브러리들의 바이너리는 따로 빌드해서 배포가 안되어 있기에 직접 빌드해서 사용해야합니다. 그래서 직접 빌드해서 사용하는 방법을 알아보려고 합니다. 그리고, 이 튜토리얼은 imgui.net에 한정된게 아니라 cimgui 관련 빌드파일이 필요하신 모든 분들이 사용할 수 있는 dll 컴파일 튜토리얼 입니다. 그냥 명령어만 따라치시면 됩니다. 필수 선행사항 git, cmake 를 설치해야합니다. git환경변수..

프로그래밍/c# 2021.06.29

OpenCV로 만들어본 히오스 AI

뒤에서 팀 따라 다니며 포션먄 뿌리는 봇. 아군 플레이어가의 체력바를 기본적으로 인식하지만, 체력바가 게임 카메라 외부에서 랜더링이 안되어 안보일때도 있으므로 미니맵의 아이콘표시 등을 인식하고 미니맵을 우클릭해서 이동하기도 한다.., 팀 위치는 상단 아군 체력바에 초록색 게이지가 좌측이면 내가 좌측팀, 우측이면 우측팀이고 팀 위치를 기반으로 조금 AI가 최대한 아군 포탑쪽에 가까운 안전한 움직임을 취한다. 그냥 간단히 만든거라 별 거 없고 팀 따라다니면서 포션뿌리고, 적군 체력바 여러개 감지되면 위치 a,b 사이의 중간값위치에 광역 스킬 뿌리고.. 정말 별거 없지만 그냥 OpenCV 경험해보고싶어서 만들어봄.

[c#] imgui.net 한글 출력 안되는 문제 해결

https://github.com/mellinoe/ImGui.NET mellinoe/ImGui.NET An ImGui wrapper for .NET. Contribute to mellinoe/ImGui.NET development by creating an account on GitHub. github.com ImGuiController.cs 의 생성자 초기화 부분의 ImGui.GetIO().Fonts.AddFontDefault(); 함수 호출을 아래 코드 호출로 변경하여 대상 폰트를 출력시킬 수 있다. ImGui.GetIO().Fonts.AddFontFromFileTTF("폰트명.ttf", 15.0f, null, ImGui.GetIO().Fonts.GetGlyphRangesKorean());

프로그래밍/c# 2021.06.19

유니티 구글 스프레드시트로 데이터 쉽게 관리하기(UGS)

유니티 구글시트 소개 동영상 가이드 동영상 유니티 구글시트 소개글 (UGS) 유니티에서 구글시트를 이용하여 게임 데이터를 관리하는데 용이한 유니티 구글시트 (UGS)를 소개합니다! 공식문서 에서 좀더 상세한 확인이 가능합니다. 😊 유니티 구글시트는 구글 스프레드 시트를 이용하여 게임 데이터의 데이터베이스를 디자인하거나, 게임의 Localization(현지화)를 매우 쉽고 효과적이게 할 수 있는 유용한 도구입니다. 아래 나열된 기능들을 사용하여 쉽게 게임 데이터를 구글시트로 관리할 수 있고, 테스트 시간도 크게 단축시킬 수 있으므로 게임 개발자 분들에게 큰 도움이 될것입니다. 기능 매우 편리한 Live Load/Save 가 가능합니다. 😉 실시간 로드 (데이터를 앱을 껏다키거나 빌드하지 않고 변경할 수 있..

프로그래밍/unity 2021.03.17 (19)