ui12 게임개발 중급(100) - Monster Killer(62) Monster Killer 어느새 중급을 다룬지 100번째가 되었습니다! 새삼 글을 상당히 많이 썼다고 이제서야 느껴지네요 하지만 아직 앞으로 더 보여드릴게 많습니다. 항상 봐주셔서 감사합니다. 그럼 바로 본론으로 들어가보도록 하겠습니다. UI 피드백 및 변경 사항저번에 오류수정과 UI 수정에 이어서 작성해볼까 합니다. 오늘은 받았던 UI 피드백과 그에 관련한 변경 사항입니다. UI 피드백은 대부분 축소 화면에서 깨지는 것이었고, 그 부분은 해결이 되었습니다. 이제 남은 것은 불편한 UI와 디자인 그리고 게임 플레이 가이드가 없다는 UX 관련 부분도 있었습니다. 이제 변경사항을 살펴보겠습니다. 클리어 페이지불편한 UI와 디자인에는 주로 이 클리어 페이지의 비중이 높았습니다. UI 디자인을 하기 전에는 글.. 2024. 10. 20. 게임개발 중급(99) - Monster Killer(61) Monster Killer오늘부터 올라오는 몬스터 킬러 내용은 이미 구현된 내용들이며, 진행된 순서대로 글이 올라간다고 생각하시면 됩니다. 버그 수정우선적으로 발견된 버그에 대해서 수정하는 작업을 시작했습니다. 피드백에서 발견된 버그는 두가지로, 첫번째는 일시정지 버튼과 ESC키의 동시 조작에 관련된 버그였습니다. 일시정지 버튼을 눌러 정지시키면 해당 화면에 홈버튼이 있고 홈버튼을 누르면 메인 씬으로 이동하게 되는데, 이 과정에서 약 1초간 페이드 아웃을 거칩니다. 그런데 그 사이에 ESC키를 누르면 타임스케일을 통해 게임을 정지시키기 때문에 화면이 정지하여 더이상 게임을 진행할 수 없는 상태가 되는 것입니다. 이 문제는 ESC키와 일시정지 버튼 두 가지의 일시정지 기능을 동일하게 넣어놓았기 때문에 발생.. 2024. 10. 14. 게임개발 중급(90) - Monster Killer(52) Monster Killer 점수 합산이전에 만든 점수를 얻는 과정은 플레이어가 스테이지에 진입하면, 해당 스테이지 내부적으로 설정된 시간이 지남에 따라 점수가 같이 감소하고, 클리어 타임에 맞는 점수를 획득하도록 구현했습니다. 그 과정에서 최소 점수도 20점으로 설정을 해주었는데 아직 한 가지 문제가 더 있습니다. 바로 재도전 시 같은 스테이지에서 여러 번 점수를 얻는 경우입니다. 지금은 아무런 장치가 없기 때문에 만약 최초로 1스테이지에서 50점을 얻고 다시 1스테이지를 도전하여 20점을 얻었다면 총 70점이 합산될 것입니다. 하지만 같은 스테이지를 재도전할 때에는 최고 점수를 기준으로 반영되어야 하기 때문에 이런 장치를 추가해 줄 것입니다. 게임 매니저에서 최고 점수에 대한 함수를 만들고 기존에 .. 2024. 8. 9. 게임개발 중급(63) - Monster Killer(25) Monster Killer(25) 저번시간부로 스테이징을 대략적으로 완료했습니다. 이제부터는 재화시스템을 만들어 보겠습니다. 재화 시스템 개념은 간단합니다. 게임을 한번쯤 플레이 해보셨다면 아시겠지만, 거의 대부분의 게임에는 재화가 존재합니다. 여기서 말하는 재화는 흔히 골드와 같은 화폐가 주로 사용됩니다. 게임의 종류에 따라서 엄청나게 많은 다양한 종류의 재화를 활요하기도 하고, 간단한 몇가지의 재화만으로 모든 게임요소를 즐길 수 있게 만들기도 합니다. 저는 이 재화시스템에 기본이 되는 골드를 먼저 만들어 보겠습니다. 골드 만들기 먼저 제가 만들고 있는 게임에서는 기본 매커니즘이 플레이어가 몬스터를 잡아서 다음스테이지로 넘어가는 것입니다. 그렇다면 몬스터를 잡는 과정에서 골드를 획득할 수 있어야 합니다.. 2023. 6. 27. 게임개발 중급(61) - Monster Killer(23) Monster Killer(23) 이전엔 몬스터 움직임에 따라 걷는 애니메이션을 연결시켜 주고, 다른 애니메이션과의 트랜지션이 자연스럽게 이루어 지도록 연결시켜주는 과정을 다뤄보았습니다. 이번엔 플레이어 체력이 0이 되었을 때 게임오버 화면과 재시작하는 UI를 만들어 보겠습니다. 게임오버 화면 만들기 UI 이미지를 사용해서 검은색으로 색상을 바꿔주고, 화면을 가득 채우도록 Rect Transform을 전체화면으로 고정시켜 줍니다. 그리고 텍스트를 추가해 GameOver를 입력해 줍니다. 저는 일단 투명도를 약간 조정해서 뒷 화면이 보이도록 만들어 주었습니다. 해당 화면에 게임을 재시작 할 수 있도록 Restart 버튼을 만들어 줍니다. 해당화면은 플레이어의 체력이 0이 되었을 때 등장해야 하므로 스크립트.. 2023. 6. 25. 게임개발 중급(50) - Monster Killer(12) Monster Killer(12) 저번에는 데미지 텍스트를 구현하는 과정에 대해 다뤄보았습니다. 이번에는 플레이어에게 스테이지에 대한 정보를 알려주기 위한 UI를 만드는 과정을 다뤄보겠습니다. 스테이지 UI 생성 스테이지 UI는 다양한 방식을 통해 사람들에게 다음 스테이지를 안내해 줄 수 있습니다. 저는 매우 간단하게 체력바와 같은 슬라이더를 사용하여 UI를 만들겠습니다. 체력바 밑에 작게 슬라이더 하나가 생겼습니다. 근데 이 슬라이더는 점이 4개가 존재합니다. 이 스테이지바에서 점은 몬스터의 개수 및 단계를 시각적으로 표시해줍니다. 저는 이 UI에서 체력과 마찬가지로 빨간색으로 된 슬라이더의 value값을 사용하여 진행도를 표시해 주겠습니다. Monster Controller using System.C.. 2023. 6. 11. 게임개발 중급(49) - Monster Killer(11) Monster Killer(11) 저번에는 몬스터의 부위별 데미지 적용에 대해서 알아보았습니다. 이번에는 데미지를 시각적으로 표시하는 방법에 대해서 다뤄보겠습니다. 데미지 UI 이 게임을 만들어 나갈 초반에는 체력바에 깎이는 양만 봐도 괜찮다고 생각하며 만들었지만, 더 체력이 높아지고 몬스터들이 강해지면 유저의 입장에서 체력바로 데미지를 보는것은 한계가 있다고 생각이 들었습니다. 그래서 데미지를 화면에 표시해주는 UI를 만들어 보겠습니다. 일단 가장 먼저 Text UI를 만들어 주어야 합니다. TextMeshPro를 생성해 줍니다. 그 다음에는 이 생성된 UI를 프리팹으로 만들어 주겠습니다. 그 이유는 해당 UI를 사용해서 몬스터가 피격당한 위치에서 데미지를 받았다고 표시해줌과 동시에 애니메이션을 적용하.. 2023. 6. 9. 게임개발 중급(35) - 3D 밤송이 게임 만들기(3) 3D 밤송이 게임 만들기(3) 저번엔 터레인에 다양한 텍스쳐 적용법과 나무를 생성해 맵을 꾸미고 게임을 만들기 위한 오브젝트 배치 및 설계까지 하였습니다. 이번엔 게임을 만들기 위해 필요한 스크립트를 작성해보는 시간을 갖도록 하겠습니다. BamsongiGenerator 이전에 밤송이 오브젝트를 통해 밤송이 프리팹을 만들었습니다. 우선 이 프리팹을 사용해서 밤송이 오브젝트를 맵에 생성하는 기능을 만들어야 합니다. using System.Collections; using System.Collections.Generic; using UnityEngine; public class BamsongiGenerator : MonoBehaviour { public GameObject bamsongiPrefab; void.. 2023. 5. 26. 게임개발 중급(26) - 3D 게임 만들기(6) 3D 게임 만들기(6) 저번시간엔 시간관계상 4방향 UI를 만들고 자연스럽게 움직이도록 바꾸어주는 작업까지 진행하였습니다. 이번에는 원래 저번에 하려 했던 게이지 UI 시스템을 만들고, 이어서 소리와 파티클을 적용시키는 방법에 대해서 알아보겠습니다. 게이지UI 게이지 UI를 만들어 주겠습니다. 이번에도 에셋스토어에서 간단한 UI 이미지를 위해 에셋을 다운받습니다. 저는 Simple Round Gauge라는 에셋을 다운받았습니다. 에셋을 유니티 프로젝트에 임포트하면, 여러 사용할 수 있는 이미지들이 생깁니다. 저희가 이번에 만들것은 게이지 바입니다. 우선 UI로 이미지를 생성합니다. 이미지가 생성되었다면, 앵커와 RectTransform을 잘 조절해 위치를 정해줍니다. 저는 오른쪽 상단 구석에 배치하도록 .. 2023. 5. 16. 게임개발 중급(24) - 3D 게임 만들기(4) 3D 게임 만들기(4) 저번시간에는 아이템 생성, 방향키로 플레이어 이동하기 및 아이템 획득처리, 점수UI 처리를 하였습니다. 이번에는 UI를 사용한 플레이어의 움직임과 더불어 다양한 방식의 움직임에 대해 알아보겠습니다. UI를 사용한 플레이어 움직임 이번에 해볼 것은 키보드입력을 통한 움직임이 아닌 UI를 클릭하거나 스마트폰에서 게임을 빌드했다면, 터치를 통해서 이동을 조작하는 방식을 해볼 것입니다. 우선 에셋스토어에서 UI로 사용할 이미지를 찾아서 사용할 것입니다. 저는 "Simple Button Set 01" 이란 이름의 무료 에셋을 다운받았습니다. 에셋 스토어에서 다운받은 것을 유니티에서 사용하려면, 유니티에 들어가서 Package Manager -> Packages에 MyAssets로 들어가시면.. 2023. 5. 14. 이전 1 2 다음