전체 글

전체 글

    Git 저장소 변경 로그 삭제 없이 파일 옮기기(git mv)

    개요 Git 저장소를 사용하다 보면 파일을 옮기게 되는 일들이 많이 있다. 우리가 평소에 파일을 옮긴다고 하면 그냥 드래그 & 드롭을 하거나 잘라내기 후 붙여내기를 하면 되겠지만, Git 저장소의 파일에 그렇게 하면 문제가 생긴다. 탐색기에서 git repositioty(저장소)에 해당하는 파일을 수동으로 바로 옮기면 위의 사진처럼 파일이 삭제되고 새로운 파일이 생성된 것 처럼 인식하게 된다. 이 경우 사용 자체에는 문제가 없지만, 해당 파일에 남아 있던 커밋 로그가 같이 지워짐으로, 나중에 수정 내역을 보려고 할 경우 볼 수 없게 된다. 그럼 어떻게 해야 할까? git mv 커맨드를 이용하자 git mv커맨드는 git 레포에 해당되는 폴더나 파일을 옮기거나 이름을 변경하는데 사용되는 커맨드이다. git..

    스테퍼 테이스 개발 후기 3편 - 지스타, 버닝비버

    스테퍼 테이스 개발 후기 2편 - 텀블벅 후원 목표 801% 달성 이전글은 여기 스테퍼 테이스 개발 후기 2편 - 텀블벅 후원 목표 801% 달성 스테퍼 케이스 개발 후기 1편 - 프로그래밍 후기에서 이어서 쓰는 글입니다. 스테퍼 케이스 개발 후기 1편 - 프로그래밍 후기 어쩌다 이 게임의 개발에 참여 하게 되었는가 취업할 시기가 다가 오 scincy.tistory.com 텀블벅 모금이 끝나갈 무렵 신청한 2022 지스타의 인디게임부스(제 2 전시관 BIC Showcase)에서 운이 좋게도 11월 17일부터 11월 20일 모든 기간 동안 [STAFFER CASE]를 전시할 수 있는 기회를 얻게 되었다. 처음으로 대중들에게 게임의 피드백을 현장에서 받는 걱정되면서도 기대에 부푸는 값진 시간이었다. 아직 군..

    스테퍼 테이스 개발 후기 2편 - 텀블벅 후원 목표 801% 달성

    스테퍼 케이스 개발 후기 1편 - 프로그래밍 후기에서 이어서 쓰는 글입니다. 스테퍼 케이스 개발 후기 1편 - 프로그래밍 후기 어쩌다 이 게임의 개발에 참여 하게 되었는가 취업할 시기가 다가 오고, 매일마다 특별한 일 없이 시간을 지내며, 인터넷 지인들이 삶에서 중요한 무언가를 하나씩 달성하는 모습을 보게 되자, scincy.tistory.com 텀블벅 후원 시작 15분 만에 목표금액 달성 정말 갑작스러운 일이 일어났다. 2022년 9월 10일 오후 3시에 열린 텀블벅 후원 페이지가 15분 만에 목표 금액을 달성한 것이다. 그리고 반나절도 지나지 않은 고작 2시간 만에 목표액 200%를 달성하기까지 했다. 정말 깜짝 놀랐다. 내가 알던 세상이 조금 다르다는 것을 느꼈다. 마치 현실이 아닌 것 같았다. 정..

    스테퍼 케이스 개발 후기 1편 - 프로그래밍 후기

    어쩌다 이 게임의 개발에 참여하게 되었는가 취업할 시기가 다가 오고, 매일마다 특별한 일 없이 시간을 지내며, 인터넷 지인들이 삶에서 중요한 무언가를 하나씩 달성하는 모습을 보게 되자, 나는 어느 새 머릿속에 떠올라 사라지지 않는 의문이 들게 되었다. 나는 과연 이대로 괜찮은가? 나는 미래에 대해 준비가 되어 있는가? 진짜로? 그렇게 생각해? 스스로 그것을 증명할 수 있어? 지금까지 정말 최선을 다 해 왔다고 생각해? 아닐껄? 게임 개발자의 꿈을 꾸었지만 그 길은 너무나 막연해서, 어떤 직종을 골라야 할지, 무엇을 공부해야 할지, 할 수 있는 일들이 너무 많았기에 나 자신에 대해 방황을 하게 되었다. "나는 과연 지금 최선을 다하고 있는가?"에 대한 의문은 어쩌면 내가 병역산업체에서 군을 대신하려 시도해..

    Unity 네트워킹(unity MLAPI(Netcode)) 공부 - 헬로 월드 만들기

    잡설 몇년 전 유니티는 네트워킹 솔루션 UNet을 deprecated화 시키면서 이를 유니티에 더 이상 사용하지 않을 것을 권고 했었다. 아무런 대체품 없이 개발 중단 한 것과 같아서... 포톤이나 Mirror같은 솔루션을 이용하거나, 직접 네트워크 코드를 짤 수 밖에 없는 큰 공백 상황에 던저져 버렸었다. 그리고 작년 쯤 유니티에서 제공하는 UNet의 대체제가 나오게 되었는데, 그것이 MLAPI이다.(현재는 Netcode라는 이름으로 바뀐듯) 이름 좀 그만 바꿔... 자료 찾는거 너무 어렵다...😭😢 최근... 올해 6월 말에 버전명에서 pre가 사라지면서 프리뷰버전에서 정식버전이 되었는데, 네트워킹이 되는 프로그램을 아직 제대로 작성해 본 적이 없는 만큼 공부해 보고자 한다. 공식 문서 번역 원본 문..

    간단한 유니티 2D 타워 디펜스 게임 만들기 5편 - 캐릭터 이동

    이전 편에서 캐릭터 스폰 기능이 완성 되었으니 이번에는 캐릭터를 이동하는 기능을 만들어보자. 구현 방식 1. 일정 주기마다 이동 대상(적)을 찾는다. - 적 캐릭터가 1명 이상 존재하면 적들 중 가장 가까운 적을 찾고, 이동한다. - 적 캐릭터가 없으면 적 성채를 향해 이동한다. 2. 1번의 거리 비교 과정 중 거리가 공격 범위 보다 작으면 이동을 멈추고 공격을 시도한다. - 공격 시도 중에는 1번을 멈추고, 공격 모션이 끝나면 1번을 재개한다. 이 게임의 경우 캐릭터마다 서로 다른 속도를 가질 수 있으며, 이에 따라 전투 중 가장 가까운 캐릭터가 바뀔 수 있다. 때문에 공격 모션중에는 캐릭터 하나를 타겟팅 하는 것으로 하고, 공격이 끝난 후 가장 가까운 캐릭터를 다시 찾도록 하여 게임의 변화에 대응 할..

    간단한 유니티 2D 타워 디펜스 게임 만들기 4편 - 캐릭터 스폰

    캐릭터 스폰 구조 생각해 보기 캐릭터가 스폰되려언 어떤 과정을 거쳐야 하는지 생각해 보자. 단순하게 [버튼을 클릭하면 해당 캐릭터를 소환한다.]로 끝내는것이 아닌 실제 시스템의 동작을 생각해 봐야 한다. 유저가 스폰할 캐릭터를 캐릭터 선택 UI에서 고르고 UI를 클릭하여 소환요청을 보낸다. 스폰 시스템에서 어떤 캐릭터에 대한 소환 요청인지 확인한다. 재화 시스템에 해당 캐릭터의 소환에 드는 비용을 청구한다. 청구 결과 : - 재화 부족 : 로그를 출력하고 클릭을 무시한다. - 재화 충분 : 다음 단계로 넘어 간다. 소환할 캐릭터의 기본형태를 가져와 캐릭터 데이터에 캐릭터 업그레이드 값을 적용한다. 유저의 스폰 지점에 캐릭터를 소환한다. 소환 된 캐릭터를 관리할 수 있도록 스폰 시스템의 소환된 캐릭터 리스..

    간단한 유니티 2D 타워 디펜스 게임 만들기 3편 - 캐릭터 유닛의 행동에 관한 고려

    이전 글에서 말했긴 하지만 다시 한번 더 상기하기 위해 캐릭터 유닛의 행동과 그에 따라 필요한 속성(정보)들을 우선 나열해 보고자 한다. 캐릭터가 할 수있는 행동 1. 이동할 수 있다. 2. 이동을 멈출 수 있다. 3. 공격할 수 있다. (모든 유닛을 대상으로) 4. 공격받을 수 있다. 5. 이동과 공격하기 위한 적을 찾고, 감지할 수 있다. 6. 사망 할 수 있다. 7. 스폰되어 질 수 있다. 8. 업그레이드 되어 질 수 있다. 행동을 나열해 보았을 때 크게 공격, 이동, 사망, 스폰, 업그레이드의 총 5가지 시스템(행위)로 나누어 지는것으로 생각된다. 물론 추후에 캐릭터별 스킬을 추가하는것을 고려 한다면 이보다 더 달라 질 수 있겠지만... 캐릭터가 스폰되고, 이동해서 적을 공격하는 기본적인 로직을 ..

    간단한 유니티 2D 타워 디펜스 게임 만들기 2편 - 기초 쌓기

    리소스 게임을 테스트 하기 위해선 우선 시각적으로 보여야 하는 리소스들이 필요하다. 각 팀의 성채와 소환되어질 캐릭터, 지면, 게임의 배경등이 우선 가장 필요한 리소스들이라 생각했다. 저작권 없이 자유롭게 사용 가능한 아래 소스들을 다운받아서 유니티 프로젝트를 만들고 에셋들을 임포팅한다. 방법은 유니티 화면에 프로젝트 창에 끌얻 넣기만 하면 됨으로 혹시나 이 글을 보는 분들이 있다면 다른 강좌를 찾아보시길 추천드린다. 아래는 해당 리소스들의 다운 링크이다. 캐릭터 리소스 https://sventhole.itch.io/bandits Bandits by Sven Game Asset sventhole.itch.io https://sventhole.itch.io/hero-knight Hero Knight by ..

    간단한 유니티 2D 타워 디펜스 게임 만들기 1편 - 개요

    리소스의 중요성 게임을 제작하는데에 있어 리소스는 매우 중요하다. 눈에 직접적으로 보이는 요소이기 때문에 게임의 분위기와 퀄리티를 좌지우지하며, 유저에게 게임의 첫인상을 결정짓는다. 나는 게임은 최소한 상호작용요소, 시각요소, 청각요소, 규칙의 4가지 요소로 구성된다고 생각한다. 상호작용과 규칙은 기획과 프로그래밍만으로도 어느 정도 구현이 가능하지만, DOS로 게임하는것이 아닌 이상 시각요소와 청각 요소는 리소스 구현이 불가능하다. 그리고 이 요소들은 정말 제대로 만드려고 한다면 시간이 제법 들어가는 편이고, 돈도 꽤 많이 필요한 법이다. 개발 방향 이 프로젝트는 토이프로젝트 느낌으로, 유니티 엔진으로 핵심 기능들만 구현하고 마무리 지을 생각이다. 당장 그래픽과 사운드 리소스를 만들만한 시간과 돈이 많지..

    작업 중인 폴더를 git hub desktop으로 Git에 올리는 법

    처음 깃을 사용하면서 방황하게 되었는데, 자꾸 잊어버리는 것 같아 여기에 써둬 본다. 필요 요소 저장할 폴더 위치를 알고 있을 것 Github desktop을 설치할 것 (git bash로도 할 수 있지만 잘 모르기도 하고.. 직관적이지 않고 않아서 패스) Github ID (Github에 올리는 내용이므로 필수! Github Desktop을 설치하면서 로그인을 하면 됨.) 하는 방법 Github desktop을 처음 설치 후 로그인하면 아래 처럼 보이고, 처음 Git을 사용하면 여기서 뭘 해야 할 지 전혀 모를 것이다. 작업에 처음부터 git repo를 만들고 진행했으면 별 문제가 없었겠지만, 이 글을 보러 온 사람들은 작업 중에 git을 써보려 했다가 막힌 사람들일 것이기 때문에… File -> Ad..