글

2026/10/21 Project CB - 볼링공과 상호작용의 네트워크화

이미지
    안녕하십니까 쳇바퀴 스튜디오입니다. 2026년 10월 21일 개발일지를 작성하겠습니다. 지난 개발일지 이후 볼링공 및 상호작용 행동이 모든 클라이언트에서 동기화되도록 했습니다. 영상으로 보여드리겠습니다.      영상은 클라이언트 시점에서 촬영된 영상입니다. 클라이언트가 공을 집고 떨어뜨리고 왔다갔다하며, 결국에는 공을 투척했습니다. 이 일련의 상황에서 클라이언트의 입력이 서버에 전송되어, 서버가 입력에 따라 볼링공을 이동시키고, 이동된 볼링공의 위치가 Network Transform과 같은 코드를 통해서 클라이언트에게 다시 동기화 되는 작업이 진행되었습니다.    하지만 영상에서 확인할 수 있듯이, 볼링공이 굉장히 부자연스럽습니다. 고정적인 위치에 있는 것이 아니라, 볼링공의 위치가 굉장히 불안정하며 정상적인 작동처럼 보이지 않습니다. 이 뿐만 아니라, 영상 후반부에서 관찰하셨을 수도 있듯이, 볼링 핀들이 넘어진 후에 정리되지 않는 모습입니다. 다음 개발일지에서는 이러한 문제들을 수정하도록 하겠습니다. 감사합니다.           공식적인 개발일지는 전부 보고드렸습니다만, 그럼에도 불구하고 현재 상황을 기록하고 싶은 점이 있어 사족을 붙입니다. 대주제는 호스트와 클라이언트에서 플레이어의 역할을 어떻게 구분하는가입니다. 네트워크 개발 돌입 처음에는 모든 플레이어가 완벽히 동일한 객체였습니다.    모든 캐릭터 오브젝트의 계층구조       그렇게 잘 작동하는 것을 확인한 후, Owner가 아닌 캐릭터 오브젝트들에 필요 없는 기능들을 제거하기로 했습니다. 예를 들어 카메라 오브젝트와 상호작용 가능한 도구들에 외곽선이 표시되는 기능등들을 제거했습니다. 결국 서버와 클라이언트 모두 Owner가 아닌 캐릭터 오브젝트들을 비주얼적인 기능만 가지게 만들었습니다. Owner의 유무에 따라 구별된 오브젝트들의 계층구조...

2026/10/17 Project CB - 네트워크 시작, 캐릭터 소환 및 기본 움직임

    안녕하십니까 쳇바퀴 스튜디오입니다. 2026년 10월 17일 개발일지를 작성하겠습니다. 지난 개발일지에서 새로운 유저가 호스트에 연결한 것을 확인만 할 수 있었습니다. 오늘 개발일지에서 그 연결된 유저에 할당할 캐릭터 소환과 그 캐릭터의 움직임을 두 프로그램 모두에서 동기화되게 했습니다. 영상으로 보여드리겠습니다.      영상에서 확인할 수 있듯이 영상 촬영자가 우선 움직이고, 이후에 레인 중앙에 보이는 또 다른 파란색 캡슐이 움직입니다. 화면 내에서 보이는 또 다른 파랑캡슐은 네트워크에 연결된 또 다른 유저입니다. 그 유저가 해당 컴퓨터에서 키보드를 통해 입력을 했을 때, 해당 프로그램에서 입력 명령을 호스트 컴퓨터에 RPC(Remote Procedure Call)을 통해 실행하고, 호스트의 컴퓨터에서 파랑 친구 캡슐을 이동시킵니다. 그 후, 파랑 캡슐에 해당된 NetworkTransform를 통해 연결된 유저에 컴퓨터에도 해당 캡슐의 위치가 동기화 됩니다.       완벽하진 않지만 기본적인 캐릭터와 그의 움직임이 구현했습니다. 우선 다음 개발일지까지는 캐릭터가 볼링공(도구)을 장착해서 공을 던지는 것이 네트워크에서 동기화되는 것을 보여드리겠습니다. 감사합니다.

2026/10/14 Project CB - 느낌 개선, 네트워크 시작

이미지
    안녕하십니까 쳇바퀴 스튜디오입니다. 2026년 10월 14일 개발일지를 작성하겠습니다. 이번 개발일지에서는 네트워크 작업과 이를 구현하기 위한 게임 느낌을 개선하는 작업들을 구현했습니다. 영상으로 보여드리겠습니다.      영상을 통해 개선된 점을 확인할 수도 있지만, 영상만으로 파악하기는 굉장히 어렵습니다. 변경된 점들을 하나씩 기술해보겠습니다.  캐릭터의 크기  플레이어 캐릭터의 키가 작아졌습니다. 이전에는 핀과 볼링공을 포함한 모든 환경이 너무 작아보였습니다만, 캐릭터의 크기를 줄임으로서 이를 개선했습니다.  볼링공의 물리  장착하지 않은 볼링공이 유저와 부딪혔을 때, 유저가 가한 힘만큼 볼링공이 움직입니다. 이 때의 물리는 유저가 상호작용으로 볼링공을 굴렸을 때의 움직임과는 확실한 차별점이 있습니다. 영상에서 확인할 수 있듯이 조금 굴러가다가 쉽게 멈춥니다. 볼링 핀 기계 행동  기존에는 체크박스로 잡은 핀이 제대로 잡혀가지 않거나, 볼링공을 맞고 튀어나온 핀들에 대한 개선을 했습니다. 하지만 이럼에도 완벽히 개선된 부분이 아니며, 추후에 볼링핀 아트와 콜리전 박스를 적용할 때 완벽히 개선하도록 하겠습니다. 볼링공 발사 행동  볼링공을 상호작용하여 투척할 때, 일관적이지 않은 행동을 발견했습니다. 예를 들어 땅바닥에서부터 굴리기를 원했지만 공중에서 그대로 발사해버리는 행동입니다. 이는 볼링공의 Interpolation옵션 그리고 rigidbody transform과 visual transform의 차이 때문에 발생한 문제였습니다. 따라서 투척 Transform을 플레이어 캐릭터에 추가하고 코드 개선을 통해 해결할 수 있었습니다.  도구 던지기  볼링공과 같이 상호작용 가능한 도구들을 손에 장착한 후, Q를 눌러 땅바닥에 떨어뜨리는 행동을 추가했습니다.       위와같은 작업을 통해 전체적인 게임 ...

2026/10/10 Project CB - 볼링 규칙, 환경 프로토타입 구현

이미지
     안녕하십니까 쳇바퀴 스튜디오입니다. 2026년 10월 10일 개발일지를 작성하겠습니다. 이번 개발일지에서는 구현된 볼링 규칙과 환경을 보여드리겠습니다. 영상으로 보여드리겠습니다.     우선 구현된 볼링 환경에 대해 요소들을 하나씩 설명드리겠습니다.  벽이 생겨 바깥세상과 하늘이 보이지 않습니다. 실제 볼링장을 본떠 야외에 노출되지 않도록 구현했습니다.     파울존을 구현했습니다. 유저는 위 사진의 파란색 외곽선으로 강조된 공간 내에서만 공을 투척할 수 있습니다.    핀 하우스를 설치했습니다. 볼링이 던져지고 핀을 쓰러뜨렸을 때 핀 하우스가 작동합니다. 구현된 볼링 규칙에 맞추어 현재 프레임과 롤에 맞는 핀의 개수를 적절하게 설치하고 쓰러진 핀들을 치웁니다.      또한 볼링 규칙을 구현했습니다. 위 사진과 같이 결과를 도출하며 오류 없이 실행됩니다. 다음 개발일지에서는 자잘한 버그 수정 및 멀티플레이를 위한 네트워크 작업을 시작해보겠습니다. 감사합니다.  

2026/10/7 Project CB - 프로토타입 개발일지

이미지
     안녕하십니까 쳇바퀴 스튜디오입니다. 2026년 10월 7일 개발일지를 작성하겠습니다. 지난 개발일지 이후로 계속 프로토타입을 개발하고 있으며 이 개발일지에서는 외곽선과 투척 행동을 개발한 것에 대해 기술하겠습니다. 영상과 함께 보여드리겠습니다.      영상에서 확인할 수 있듯이, 볼링공에 새하얀 외곽선이 생겼습니다. 이는 볼링공 뿐만 아니라 플레이어가 상호작용 가능한 모든 물체에 생길 예정입니다. 또한 이 유저가 이 물체를 주울 수 있는 상황일 때, 해당 물체가 초록색으로 빛납니다.     볼링공의 투척 행동을 구현했습니다. 지난 개발일지까지에서는 볼링공을 손에 든 상황에서 좌클릭으로 바로 투척할 수 있었습니다. 볼링공의 실제 투척 행위를 게임적으로 변화하기 위해 영상처럼 변했습니다. 자세한 상황은 화면 좌측상단에도 나오지만 다시 한 번 말씀드리자면 아래와 같은 행동을 추가했습니다.  볼링공을 장착한 상태에서 마우스 좌클릭을 꾹 누르면 투척 파워가 나타납니다. 투척 파워는 0이 최소값이고 1이 최대값입니다. 투척 행동이 시작되면 0에서 시작하여 천천히 증가하고 1에 도달하면 다시 0으로 감소하게 됩니다. 플레이어는 볼링공을 투척하기 위해 스텝을 밟아야합니다. 이를 QTE로 구현했습니다. 투척 파워를 충전하는 중 WASD중 주어지는 한가지 이동키를 입력하면 투척파워가 고정되며 QTE가 발생합니다. QTE란 WASD 이동키 중 하나를 제한 시간 내에 입력해야하는 과제이며, 제한 시간내에 해당 입력이 인지된다면, 다음 QTE로 넘어갑니다. 2번째 QTE도 성공하면 총 3가지 스텝 입력을 성공했기 때문에 볼링공이 발사됩니다. 만약 QTE에 실패한다면 투척파워가 살짝 감소되고 다음 QTE나 투척행동으로 넘어갑니다.    금일까지 위와 같은 행동들을 구현했고 다음 개발일지에서는 투척 물리 개선, 볼링 환경 구현, 볼링 규칙 시스템, 혹은 네트워크등을 구현해보겠습니다...

2026/10/4 Project CB 프로토타입 개발일지

이미지
   안녕하십니까 쳇바퀴 스튜디오입니다. 2026년 10월 4일 Project CB 프로토타입 구현에 대한 개발일지를 작성하겠습니다.    지난 개발일지 이후로 유저의 입력에 따라 움직이는 캐릭터, 볼링공의 객체화, 그리고 볼링공과의 상호작용등을 개발했습니다. 영상으로 보여드리겠습니다.    우선 캐릭터를 보여드리겠습니다.     게임은 1인칭이기 때문에 다른 카메라로 유저의 입력에 따라 움직이는 파란색 캡슐을 볼 수 있습니다. 해당 캐릭터는 이동 및 점프가 가능합니다.      다음으로 볼링공의 객체화와 볼링공과의 상호작용을 보여드리겠습니다.      영상에서 확인할 수 있듯이 유저가 볼링공을 줍자 볼링공이 카메라 하단에 고정되고 유저의 캐릭터와 함께 움직이는 것을 확인할 수 있습니다. 이어서 유저가 상호작용 버튼을 누르자, 볼링공의 상호작용인 투척 활동이 실행되어 레인을 따라가다 핀을 맞췄습니다.      위 모든 행동은 대략적으로 다음과 같은 표로 정리할 수 있습니다.      위의 상황들을 구현하는 도중 PhysicsMaterial와 Rigidbody 컴포넌트의 Interpolate옵션을 알게되었습니다. 이 사항들 또한 공유하고자 합니다. PhysicsMaterial  Collider 컴포넌트에는 Physics을 지정할 수 있습니다. 이는 5가지 값을 가지고 있는 하나의 구조체이고 이 값들로 해당 컴포넌트를 소유한 개체의 물리 상호작용을 결정합니다. Dynamic Friction, Static Friction, Bounciness, Friction Combine, Bounce Combine 값들을 가지고 있습니다. 이에 대해 하나씩 설명하겠습니다.   Dynamic Friction: 움직이는 오브젝트의 마찰계수를 나타내는 값입니다. 위 사진에서 운동 마찰력을 나...

10/2/2026 개발일지

이미지
    안녕하십니까 쳇바퀴 스튜디오입니다. 2026년 10월 2일 개발일지를 작성하겠습니다. 툴팁 기능을 다양한 테스트 및 폰트 데이터에 대한 최적화를 마친 후 패키징하여 새로운 버전으로 마트에 유통했습니다. 해당 업데이트를 마지막으로 새로운 프로젝트에 착수할 예정이지만, 유저들의 새로운 의견이 생긴다면 언제든지 유지보수의 의향이 있습니다.      다음 프로젝트는 Unity엔진을 사용한 3D 멀티 플레이 스포츠 게임을 구현하려고 합니다. 볼링을 기반으로 구현하기 위해 노력하며 현재 다음 사진과 같이 구현했습니다.       네트워크를 경험해본 경험이 없기 때문에 익숙한 Unity엔진을 계속 사용하려고 하며 2D를 한 번 출시했기 때문에 3D로도 출시를 도전해보겠습니다.  다음 개발일지부터 비정규적이었던 개발일지 작성 기간을 회복하여 규칙적으로 또한 정기적으로 다시 개발일지를 작성하도록 하겠습니다. 감사합니다.