분류 전체보기
-
스파르타 심화 팀과제 / 피격시 데미지 자막표현게임 개발기록 2024. 6. 24. 01:48
클릭형 게임을 만들고 있는데 Boss가 데미지를 입었을 시에 데미지를 띄우는 기능을 구현 해보자 먼저 이거 너무 하고 싶었다. 이때까지 한 번도 안 해봤는데.. ㅋㅋ 어떻게 할까 생각 해보았는데, 일단 자막이 나와야 하고, 데미지로 자막이 바껴야 하고, 위로 올라가는 듯한 움직임이 있어야 하니까 그냥 순서대로 하면 됐었다. 나는 자막이 위로 올라가는 듯한 연출도 업데이트를 사용 하지 않으려고 애니메이션을 통해서 구현했다. // 그런데 나중에 튜터님이 애니메이션이 오히려 더 값이 비싸다고 했다. 그리고 굳이 애니메이션이 아니라 DoTween? Tween이라는 기능을 사용 하면 애니메이션을 코드로써 구현 할 수 있다고 한다. 여기서 코드로 Transform을 움직이게 하면 순간이동식이 아니라 애니메이션..
-
스파르타 심화 팀과제 / 클릭형게임 펫 시스템 만들기게임 개발기록 2024. 6. 23. 19:45
자동으로 공격 해주는 펫을 만들어 보자. 펫은 상점에서 구매가 가능 하고, 구매시 플레이어의 공격력에 비례해서 자동으로 공격 해준다. 먼저 얘네도 SO를 한 번 써볼까 오브젝트를 만들까 고민을 해봤는데, 펫들의 생성위치를 굳이 정하지 않고, 지금 생각으로는 몇 마리 안 만들 것이기에(맵이 작음) 위치를 직접 정해놓고 거기에 생성 되게 할거라 SO를 사용 하지 않고 오브젝트만, 프리펩만 넣으면 자동으로 프리펩의 갯수만큼 상점에 슬롯이 나오게 만들 거다. / 프리펩은 프리펩으로 만들어진 위치가 저장이 되어서 생성이 된다면 저장을 했던 그 곳에 생성이 된다. 처음 생각은 아이템 슬롯이 있고, 이 슬롯을 갖고 있는 오브젝트가 있고, 이 슬롯 프리펩을 갖고 있는 오브젝트에 펫 프리펩을 배열로 넣어둬서 배열만큼 ..
-
스파르타 심화주차 팀과제 / 계속 나오는 보스 만들기게임 개발기록 2024. 6. 19. 22:35
이번 팀과제에서는 우리팀의 컨셉을 이용한 클릭형 게임을 만들어 보기로 했다. 우리가 보스고, 우리를 죽이면 사진을 얻어서 프로필사진을 바꿀 수 있게 된다. 뭔가 좀 더 스토리를 떠올리면 재밌을 것 같은데 일단은 여기까지, 보스는 죽으면 다른 보스가 나오고, 점점 체력이 많아진다. 지금 생각 한 것은 보스는 맞으면 확률적으로 사진을 떨어뜨리고, 돈을 주고, 피격애니메이션, 효과음이 있고, 말풍선이 랜덤으로 나오게 할 생각이다. 그리고 죽게 되면 다음 보스가 스폰 되고, 사진도 뿌리고, 해서 결과적으로 우리 4명의 사진을 다 모으면 엔딩이다. 일단 뭐부터 시작해야할지 생각이 길어질까봐 무작정 오브젝트들부터 만들었다. 오브젝트를 만드는 데 Text가 나오질 않는 것이다. 그냥 Legacy 오류 때문이었는데..
-
스파르타 유니티심화주차 개인과제게임 개발기록 2024. 6. 18. 12:21
가장 쉽다고 하는 길건너 게임 같은 거를 만들어 보자. 일단 맵 부터 만들었다. 일단 바닥만 쫙 깔아두기.., 최대한 간단하게...ㅎㅎ 내가 봤을 땐 맵 이렇게 만드는 거 아닌 거 같다. 10비효율적이다.이마저도 블로그 안 봤으면 일일히 깔았을듯..., 예전에 우연히 타일맵 봤어서 다행이다 그리고 이제 캐릭터 만들고 움직이게 하자 초간지 캐릭 발견.., 인풋시스템을 활용한 움직임 구현 .., 와 이런 기본적인 것도 기억이 안 나서 40분 정도 걸린 것 같다. 나 진짜 심각한데 지금 ㅋㅋ .. 어떡해 좌우 이동 할 때 캐릭터 방향도 같이 바뀌게 하고 싶은데 이건 좀 고민 해봐야겠다. 이제 자동차 만들고 계속 왔다갔다 하게 해야겠다. 에셋 구해서 아주 간단하게 만든 자동차.,움직이기. 시작 할..
-
게임개발 숙련주차 팀과제 / Quaternion을 사용해서 문 열리게 하기 / 스파르타부트캠프게임 개발기록 2024. 6. 12. 23:09
문을 작동 하는 기능을 맡았는데 처음에는 애니메이션을 사용해서 기능을 구현 할려고 했는데, 같은 팀원이셨던 분이 애니메이션보다 함수를 만들어서 구현 하면 다른 오브젝트에도 함수 넣기만 하면 돼서 그게 엄청 편할거다라고 알려주셨다. 그래서 Quaternion을 사용 해서 기능을 구현 해보았다. 그래서 시간이 좀 걸렸다.. 문 열리게는 빠르게 했지만 문제가 많았다.... Quaternion.Slerf 라는 것을 사용해서 천천히 스르륵 열리게 하는 것을 구현 할 수가 있다고 해서 그 함수를 알아보고 작동을 했는데 스르륵 열리긴 했지만 생각처럼 되질 않았다. 난 반복문을 사용 해서 이 문이 열리게 했는데, 디버그로 확인 해보니까 이 반복문이 멈추질 않는 것이다. 대체 왜 안멈출까. 라는 고민이 굉장히 길어졌..
-
게임개발 숙련주차 팀과제/아이템 미리보기 화면 만들기/스파르타 부트캠프게임 개발기록 2024. 6. 12. 22:29
인벤토리와 아이템을 만들던 중에 다운 받은 에셋들의 icon이 따로 없어서 어떻게 해야 하나 하다가 튜터님이 Render Texture라는 것을 알려주셨다. Render Texture라는 것은 렌더링결과를 텍스쳐로 저장 한다!라고 하는데 어려운 소리는 집어 치우고 화면을 텍스쳐로 저장한다. 무슨 말이냐 하면 화면에 그려지고 있는 화면을 그러니까 아무튼 텍스쳐로 저장 한다! 그러니까 이것이 왜 사용 되냐면 동영상과 같이 화면에 띄워놓기, 할 때 사용 된다. 음..... 설명하기가 어렵다. 사용 하려면 Render Texture라는 에셋을 추가 하고 카메라와 UI 오브젝트에 이 텍스쳐를 집어 넣어야 한다. 그렇게 하면 이 카메라가 찍고 있는 것을 UI오브젝트가 저장을 하게 된다. 이걸 왜 튜터님이 ..
-
스파르타 3D 숙련주차 개인과제게임 개발기록 2024. 6. 12. 22:05
Alt F4 같은 게임을 만들라고 한다. 먼저 플레이어의 움직임을 하기 전에 맵을 만들어야 해서 유튜브에 나온 터레인 좀 끄적여봤다. 생각보다 쉽지 않았다. 그래서 대충 하고 끝냈다. 나에겐 시간이 얼마 없었다. 그리고 플레이어 오브젝트를 만들고 움직임을 구현 했다. 플레이어는 이동과 점프를 할 수 있다. 3D 강의에서 인풋시스템에 Invoke Unity를 사용해서 움직임을 구현 하였으므로 그 방식을 사용 했다. public void OnMoveInput(InputAction.CallbackContext context) { if (context.phase == InputActionPhase.Performed) { CharacterManager.Instance.Player..
-
스파르타3D서바이벌/아이템장착기능/유니티숙련주차게임 개발기록 2024. 6. 4. 18:59
public void OnEquipButton() { if (slots[curEquipIndex].equipped) { UnEquip(curEquipIndex); } slots[selectedItemIndex].equipped = true; curEquipIndex = selectedItemIndex; CharacterManager.Instance.Player.equip.EquipNew(selectedItem); UpdateUI(); SelectItem(selectedItemIndex); }이라는 함수를 작성 하고 장착 버튼에 등록을 해준다. if (slots[curEquipIndex].equipped) { ..