본문 바로가기
Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 16주차 - 고멤무스메 클론 코딩 이번주는 고멤무스메 플레이 영상을 보고 그와 비슷한 느낌의 러너 게임을 제작해보았다. 고멤무스메 그냥 보기에는 간단한 러너 게임 같지만 자세하게 들여다보면 꽤 신경써서 만들어야 할 부분이 많아 보인다. 특히 카메라를 활용한 연출이 그렇다. 우왁굳의 시청자 참여를 선발하기 위한 게임이라고 한다. 우왁굳 방송을 안 봐서 몰랐는데 팬이 만들었다고? 심지어 트위치 실시간 댓글과 아래 관객 대사랑 연동 됨....ㅋㅋㅋㅋㅋㅋㅋㅋㅋ 어쨌든 카메라 연출을 제외하고 위의 이미지를 클릭해 달리기에 참여할 참가자를 정하고, 각 달리기 참가자의 캐릭터를 월드에 배치해서 달리게 하는 부분을 만들어봤다. Runner Runner Data 생성 달리기 캐릭터의 능력치 정보는 Scriptable Object로 관리할 수 있다. Sc.. 2022. 10. 9.
Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 15주차 - Cinemachine (시네머신) 벌써 4달이 다 되어간다니, 세월 참 빠르다. 이번주는 시네머신 카메라 사용법을 공부했다. Cinemachine 준비 Window - Package Manager - Packages: Unity Registry에서 Cinemachine 검색해 Install - Sample scene도 받아줄 것. Sample scene 중 2D Confined Target Group 활용함 Cinemachine Brain Show Debug Text : 체크되어 있으면 Game 창에서 Main 카메라가 현재 어떤 virtual camera를 사용하고 있는지 보여주므로 판별하기 쉬움. World Up Override : Top view에 유용 Update Method : 카메라 업데이트할 방법 (fixed: 물리적인 시간.. 2022. 10. 2.
Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 14주차 - Visual Scripting C# scripting을 하지 않고도 노드를 생성해 연결하는 것으로 게임을 만들 수 있는 Visual Scripting에 대해 배웠다. Visual Scripting 특징 실시간 디버깅 가능, 코드의 흐름을 파악하기 좋다는 장점 존재 개발자와 비개발자의 빠른 소통, 빠른 프로토타이핑의 장점 존재 아무래도 Bolt를 다시 Unity 코드로 옮기는 과정이 있기 때문에 로직이 추가된다는 단점 존재 모든 개발을 Visual scripting만으로 작성하는 것은 추천하지 않음 시작하기 오브젝트에 Add component - Visual Scripting - Script Machine 추가 Script Machine component에서 New 눌러 Asset에 그래프 생성 또는 Assets 폴더에서 Create .. 2022. 9. 25.
Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 13주차 - Scriptable Object, 플레이어에게 장비, 옷 입히기 미니맵과 캐릭터 선택 창까지는 만들었고 이번주에는 캐릭터에게 장비를 입히는 기능 위주로 개발했다. Scriptable Object 개념 Scriptable Object는 Unity 내에서 오브젝트 각각의 값을 저장할 수 있는 저장소이다. 스크립트 내부에서 변경되지 않는 Prefab 데이터를 저장하기 유용한데, Prefab 내의 변수들은 Prefab을 인스턴스로 생성하면 매번 Prefab에 대한 사본이 만들어진다. 하지만 Scriptable Object를 사용하면 Scriptable Object의 사본을 만들고 이것을 참조하는 방식으로 작동해서 메모리 관리 측면에서 더 유리하다고. 개념은 베르의 프로그래밍 노트를 많이 참고했다. https://wergia.tistory.com/189 [Unity3D] Sc.. 2022. 9. 18.
Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 12주차 - 카메라와 RenderTexture를 활용한 UI 만들기 이번주는 지난 주에 만든 Humanoid 모델을 가지고 플레이어 외의 NPC를 만들고 UI 요소를 만들어보는 것으로 시간을 보냈다. 일정 거리 내의 플레이어를 쫓아오는 NPC 만들기 Vector3.Distance 함수를 사용해 플레이어와 NPC 사이의 거리를 체크하여 NPC의 탐지 거리보다 작으면 쫓아오고, 탐지 거리보다 크면 더이상 쫓아오지 않는 Script를 붙여준다. private void FixedUpdate() { // 두 오브젝트 사이 거리 계산 distToPlayer = Vector3.Distance(player.transform.position, transform.position); // 플레이어와 npc 현재 위치 사이 거리 distToOrigin = Vector3.Distance(ori.. 2022. 9. 11.
Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 11주차 - MagicaVoxel, Mixamo로 Humanoid 사람 형태 모델링 이번주는 MagicaVoxel이라는 무료 프로그램을 이용하여 모델링을 해보고 Humanoid 모델을 만들어 애니메이션을 적용하는 실습을 해보았다. Humanoid 만들고 애니메이션 적용하기 MagicaVoxel MagicaVoxel 다운로드 MagicaVoxel ephtracy.github.io MagicaVoxel의 단축키 MagicaVoxel ephtracy.github.io Mixamo 만든 Humanoid 오브젝트에 관절을 꽂고 애니메이션 적용 가능 Mixamo www.mixamo.com Humanoid 제작 & 애니메이션 적용 원하는 Humanoid 모델을 만들고 애니메이션을 적용하는 방법은 간단하다. 1. MagicaVoxel에서 T-pose로 모델을 만든다. 대충 이렇게 2. MagicaVo.. 2022. 9. 4.
Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 10주차 - Post processing, ProBuilder, ProGrids(Beta) 카메라에 효과를 줄 수 있는 Post processing과 오브젝트 그래픽 작업을 할 수 있는 ProBuilder에 대해 정리한다. Post processing 후처리를 위해 Post-process Volume을 생성해야 한다. - 빈 오브젝트를 만들고 Post-process Volume component를 추가한다. - 이후 후처리할 대상에 해당하는 오브젝트를 분리하기 위해 Layer를 하나 생성한다. - 생성한 Layer를 Post-process Volume component가 달린 오브젝트에 추가한다. - Post-process Volume에서 Profile의 New를 누르면 후처리 관련 프로파일이 새로 만들어지고 Add effect가 가능해진다. (만들어진 Profile은 Scenes 아래 폴더에.. 2022. 8. 28.
Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 9주차 - Light, Shader Shader. 물체의 질감이나 표면, 렌더링 되는 시각적인 형태를 담당하는 무언가... 유니티에서 3D 입체를 표현하기 위해 무수히 많은 삼각형을 각각의 방향(normal vector)으로 바라보게 한다는 것을 배웠다. 빛 Light 정반사 spectrum : 입사각과 반ㅃ사각이 같은 상태. 빛의 색. 난반사 diffuse : 입사각과 반사각이 같지 않은 상태. 물체의 색. 환경광 directional light : constant한 값. 상수. 빛의 100% = 정반사 + 난반사 (+ 환경광)로 구성되는데 환경광은 상수라서 일단 무시하고 정반사, 난반사만 생각해도 된다. 정반사와 난반사는 반비례 관계로 정반사가 증가하면 난반사가 감소한다. 정반사가 100이고 난반사가 0이라고 가정하면 물질은 거울이 된.. 2022. 8. 21.
Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 8주차 - Character controller, Audio 재생, 화면 캡처, retr0의 유니티 (Unity C#) 게임 프로그래밍 에센스 이번주는 강의 듣고, 구글링해서 원하는 기능 찾아보고, 원하는 기능 만들고, 다시 검색하고... 수업 때는 토이 프로젝트를 진행했는데 그 과정에서 배운 몇 가지 유용한 내용을 정리하고자 한다. retr0의 유니티 (Unity C#) 게임 프로그래밍 에센스 자습 시간에 retr0의 강의를 들었는데 강의 중 기록해둘만한 부분을 정리한다. 섹션 2 15번 강의 MonoBehaviour Unity의 모든 component는 monoBehaviour를 상속함. MonoBehaviour를 상속함으로써, 컴포넌트로 게임 오브젝트에 추가될 수 있음 Unity의 통제를 받음 Unity 이벤트 메시지*를 감지할 수 있음 *Unity 이벤트 메서드 이름만 맞춰 구현하면 설정된 시간에 자동으로 실행되는 함수. Awake(),.. 2022. 8. 14.