[NDC22-커리어] 언젠가 시니어가 될 주니어를 위하여서론예전부터 게임 개발자를 꿈꿔왔던 주인장은 대학 생활 중 NDC에 꼭 참가해 보고 싶었지만 코로나로 진행되지 않았고, 내부 행사로 바뀌는 등의 이유로 한 번도 참여하지 못하고 졸업하게 된다.좋은 강연들을 오프라인으로 들을 수 없다는 아쉬움이 있지만, 다행히 온라인으로 영상을 업로드해 주기에일하면서 틈틈이 듣고 필요한 것들을 정리해 보려고 한다. 이번 강연은 회사에서 주니어 프로그래머로 일하고 있는 내게 가장 먼저 눈에 들어온 강의였다.첫 회사 생활이어서 그런지, 규모가 작은 회사에서 일하고 있어서 그런 건지는 잘 모르겠지만내가 직접 겪었던 어려움에 대한 해답을 명확하게 제시해 준 강연이었다. 핵심적인 내용은 2가지가 있는데, 아래 본문에서 이야기하..
회사 프로젝트로 정신없는 2월 2월1. 인턴메인 프로젝트가 끝났다. Unity를 이용해 WebGL 게임을 만들었는데, 주변의 반응이 좋아서 뿌듯하다.백엔드만 붙으면 끝나는데, 이렇게 끝까지 해본 프로젝트가 처음인 것 같다. 웹 게임에서 진짜 많이 배웠다. 좋은 사수분을 만난 덕이다:) 인턴 계약이 2/25까지다.드디어 인턴은 끝이다~! 좋은 소식은 회사에서 좋게 봐줘서 인턴 이후에도 계속 일을 할 수 있게 되었다.사수님이 사장님께 말을 잘해주신 것 같다.신입이라 급여는 낮지만, 그래도 일할 수 있는 것에 만족한다. 지금은 다음 프로젝트를 위한 R&D를 진행 중이다.Unity를 이용한 미디어아트 프로젝트가 예정되어 있는데, 센서에 대해 공부하고 기본적인 것들을 연습하고 있다. 2/25 ~ 3/3 에는 쉬어..
랭킹 시스템 만들기1. Firebase 개요Firebase는 Google에서 제공하는 클라우드 기반 백엔드 서비스이다. Unity 플러그인이 지원되어 프로젝트에서 비교적 쉽게 연결할 수 있다.무료로 사용이 가능하지만, 용량 및 처리량 제한이 있어서 요금제를 고려해야 한다. 2. Firebase 데이터베이스 종류Firebase에는 대표적으로 두 가지 데이터베이스가 있다.Realtime DatabaseJSON 트리 구조로 데이터를 저장하며, 실시간 동기화 기능에 최적화된 DB구조가 단순하고 빠르게 동기화해야 하는 경우(ex. 채팅, 랭킹, 간단한 상태 정보) 많이 사용됩니다.데이터를 직렬화하여 JSON 형태로 업로드·다운로드한다.Cloud FirestoreNoSQL 기반 문서-컬렉션 구조로 데이터를 저장함트..
공유하기 기능 만들기1. JavaScript의 Navigator: share() APInavigator.share() 메서드는 모바일 기기의 네이티브 공유 기능을 호출할 수 있는 Web API이다. 이 메서드는 보안(HTTPS) 환경에서만 동작하며, 브라우저별 지원 여부가 다르기 때문에 유의해서 사용해야 한다.가장 유명한 사파리, 크롬 등의 브라우저에서는 동작하지만, 앱 내장 브라우저(ex. 카카오톡 앱에서 링크 클릭 시 나오는 브라우저)에서 지원하지 않는 경우가 있으며, 구버전 브라우저의 경우 지원하지 않는 경우가 있으므로 유의해서 사용해야 한다.우리 프로젝트에서는 국내 사용자들이 카카오톡에서 공유하는 것을 고려했으므로 카카오 내장 브라우저에서 동작하지 않는 버그가 있었다.이것의 경우에는 라이브러리를 ..
프로젝트 용량 줄이기 : (2) 텍스처, 모델링 서론1편에서 이어지는 글입니다.https://gdoo.tistory.com/59 [Unity] 프로젝트 용량 줄이기 : 이미지 압축프로젝트 용량 줄이기 : (1) 이미지 압축 서론많은 게임에서 UI를 이미지로 넣는다. 고화질 이미지의 경우 용량이 상당하므로 빌드 시 전체적인 프로젝트의 사이즈가 커지게 된다.웹 게임의 경우gdoo.tistory.com 모델링 압축 3D 모델링 파일의 경우 다양한 파일이 포함되어 있음을 확인할 수 있다. 해당 파일을 클릭하면 위와 같이 나온다. 여기선 중간의 Meshes의 Mesh Compression으로 압축을 진행해 준다. 텍스처텍스처 파일도 압축을 해야 한다. 텍스처의 경우 이미지 파일이므로 이미지 압축 과정과 동..
프로젝트 용량 줄이기 : (1) 이미지 압축 서론많은 게임에서 UI를 이미지로 넣는다. 고화질 이미지의 경우 용량이 상당하므로 빌드 시 전체적인 프로젝트의 사이즈가 커지게 된다.웹 게임의 경우 빌드된 최종 게임의 용량을 최대한 줄이는 것이 좋고, 브라우저에 할당된 메모리를 사용해야 하므로 각각의 리소스들의 용량을 줄이는 것이 매우 중요하다.프로젝트의 용량을 줄이는 방법 중 가장 많이 사용하는 이미지의 용량을 줄이는 방법에 대해 알아보자. 예시 이미지는 https://pixabay.com/ko/에서 다운로드하였다. 이미지 압축 : 전처리먼저 임의의 고화질 이미지를 다운로드하여 프로젝트에 넣고, UI에서 사용하는 방식인 Texture Type을 Sprite로 설정해 준다. 사진에서 보는 바와 같이 용량이 ..