본문 바로가기
Development/C#

멋쟁이사자처럼부트캠프 Unity 게임 개발 3기 88일차

by Mobics 2025. 4. 3.

 

목차


    게임에 필요한 상식

    25.04.03

    교안에 중복되는 내용이 많아서 이론적인 부분은 넘어가기로 결정됐다.

    --> 지난 프로젝트에 사용한 것들 전부 제거 (Settings의 'New Lighting Settings'는 남겨둠)

     

    프로젝트 초기화

    >> 필요한 Package 설치

    : Package Manager를 통해 설치

    • ProBuilder : 모델링 도구
    • Polybrush : 지형을 만드는 등 텍스쳐와 관련된 도구

     

    >> Window 열기

    : ProBuilder는 Hierarchy 옆에, Polybrush는 Inspector 옆에 둠

     

    ProBuilder

    : Shape 만드는 법

     

    >> 계단

     

    >> Cube로 경사면 만들기

    : Cube를 만든 다음 Edge를 선택해 옮기기

     

    >> Flip Normal

    : 실내를 만들기에 좋음 (Cube로)

     

    >> 크기 조절

    : ProBuilder로 Plane을 생성하고, X와 Z를 50으로, Cuts를 각각 50으로 조절

    --> Inspector에서 바로 수정해도 되지만 가끔 적용이 안 될 때가 있어서 Edit Shape로 수정하기

     

    >> Pivot을 Center로 잡기

    : 이후 Position을 (0, 0, 0)으로 초기화

     

    Polybrush

    >> Sculpt

     

    >> Radius 조절을 통해 더 크게 솟아오르게 할 수 있음

     

    >> Ctrl + 마우스 휠로 범위 조절 가능

    : 최대로 커진 모습

     

    >> Ctrl을 누르고 드래그하면 반대로 안으로 파이게 됨

     

    >> Smooth

    : 경사진 부분을 완만하게 만들기

     

    >> 강 끝 부분은 ProBuilder를 통해 처리하기

     

    실외 필드 만들기

    >> 문 만들기

    1. 'Connect Edges'를 활용하여 문 테두리 만들기

    1.  Cube의 위와 아래 두 선을 Shift 클릭으로 같이 선택하고 'Connect Edges' 하면 세로 선이 생기며 나눠진다.
    2. 생긴 세로 선을 움직이고, 동일하게 세로 선을 하나 더 만든다.
    3. 세로 선 두개를 Shift 클릭으로 같이 선택하고 'Connect Edges'하여 가로 선을 만든다.
    4. 가로 선의 위치를 조정하여 테두리를 완성한다.

     

    --> 오른쪽 사진은 결과물

     

    2. Extrude Faces를 활용하여 문 만들기

    1. 문으로 만들 Face를 선택하여 'Extrude Faces' 하면 살짝 튀어나오는데, 이를 다시 밀어넣는다.
    2. 그리고 다시 'Extrude Faces'를 선택하여 문으로 만들만큼 튀어나오게 한다.
    3. 문으로 만들 Face들을 Shift 클릭으로 모두 선택한 다음 'Detach Faces'하여 분리한다.

     

    3. 빈 게임 오브젝트로 부모 오브젝트를 만든 다음, 회전이나 이동시켜 문으로 작동하게 구현

     

    >> 만든 강을 더 부드럽게 만드는 법

    1. UV Editor

    : Face로 전체 선택(Ctrl + A) 후 Convert to Manual을 누른 다음 Planar

     

    2. Smoothing

    Face 전체 선택(Ctrl + A) 후 Smoothing 누르고 1번을 눌러 Group화

     

    >> New Shape - Arch로 다리 만들기

    : Edit Shape로 다리 모양 잡기

     

    >> Cube로 벽을 세우고 나무나 바위 등 프로토타입 맵 꾸미기

     

    실내 만들기

    : 새로운 Scene으로 'Outdoor' 생성 (원래 이름은 Indoor가 맞는데 잘못 지음)

     

    >> Cube로 실내 생성

    : Center Pivot, Flip Normals 등 활용

     

    ※ 실내를 만들 땐 카메라를 고려하여 실내 공간에 장애물 등을 배치해야 한다.

    : 카메라가 벽을 뚫고 나가지 않도록

     

    ※ 모델이 완성되고 나면 Pro Builder Shape Script는 삭제하는 것이 좋다.

     

    >> 통로로 다른 건물 이을 때 쉬운 방법1 (실험적인 기능이라 불완전하다)

    1. Experimental Features Enabled 체크

     

    2. Object끼리 겹치는 부분을 만들고 두 Object를 선택한 다음 Boolean Tool 활용

    : Object의 선택 순서도 중요하다

    --> Intersection : 교집합 / Union : 합집합 / Subtraction : 차집합

     

    3. 기존 Cube는 삭제하고 새로 만들어진 Object에서 통로 부분 면을 'Delete Faces' 하여 삭제

     

    >> 통로로 다른 건물 이을 때 쉬운 방법2

    1. 이어줄 건물들을 모두 Shift 클릭으로 선택하고 'Merge Object' 로 여러 Cube들을 하나로 묶어줌

     

    2. 문 부분의 face(면)을 'Delete Faces'

     

    3. 양 쪽 Object에서 연결해줄 Edge(선)를 선택하고 'Bridge Edge'를 사용하여 통로 만들기

    --> 네 면을 전부 다 하면 오른쪽 사진과 같이 통로가 완성된다.

     

    4. 가다듬고 싶으면 vertex(점)를 선택해서 다듬을 수 있음

     

    └ Light

    >> Environment Light 설정

    : 이후 Directional Light Active 해제

     

    >> 빈 게임 오브젝트로 'Lights' 생성, Pos는 (0, 0, 0)

     

    >> 'Lights'의 자식으로 Point Light 생성

    : 탈출구에 배치할 Light

    --> Light의 Mode는 Baked or Mixed, Color는 임의로 설정 (나는 Color를 그대로 설정)

     

    >> Map을 Static으로 설정

     

    >> Lighting에서 Scene에서 간단히 Baking 할 수 있도록 세팅

     

    >> 횃불처럼 Point Light를 맵에 배치

    : Color는 임의로 설정 --> 이후 Baking

     

    ※ 실제로 게임을 실행할 때, 모든 맵이 전부 다 나온다면 로딩하는 데에 오래 걸릴 것이다.

    : 따라서 플레이어 눈에 보이는 부분까지만 나오도록 하고 플레이어가 다음 방에 들어갈 때 그 방이 로딩되도록 구현

     

    ※ Asset Store에서 Particle 효과 다운 가능

    : Built-In 이기 때문에 Legacy 버전을 사용 (수업에선 사용하지 않음)

    https://assetstore.unity.com/packages/vfx/particles/legacy-particle-pack-73777

     

    Legacy Particle Pack | 시각 효과 파티클 | Unity Asset Store

    Add depth to your next project with Legacy Particle Pack from Unity Technologies. Find this & more 시각 효과 파티클 on the Unity Asset Store.

    assetstore.unity.com

     

    Terrain

    : Asset Store에서 다운로드 및 Import

    https://assetstore.unity.com/packages/3d/environments/landscapes/terrain-sample-asset-pack-145808

     

    Terrain Sample Asset Pack | 3D 풍경 | Unity Asset Store

    Elevate your workflow with the Terrain Sample Asset Pack asset from Unity Technologies. Find this & other 풍경 options on the Unity Asset Store.

    assetstore.unity.com

     

    ※ Import 중에 종속성 관련 문제로 나온 에러

    : Install/Upgrade 선택

     

    >> 새로 Scene 생성

    : 이름은 'Outdoor_Terrain'

     

    >> Terrain 생성

     

    1. Set Height

     

    2. Smooth Height

    : 매끄럽게 다듬어준다.

     

    3. Raise or Lower Terrain

    : Shift를 누르면 내려가게 할 수 있다.

     

    4. Paint Texture

    : Create Layer 선택

    --> 'Grass_B_BaseColor' 선택 후, Normal Map과 Mask Map도 각각 맞게 선택

     

    >> Add Layer로 다른 Texture도 추가하면 Texture를 선택하여 그릴 수 있다.

     

    >> 결과 예시

     

    5. Paint Trees

    : Add Tree를 눌러 나무를 추가할 수 있다.

     

    6. Paint Details

    : 풀 심기

     

    Character

    >> 새로 Scene 생성

    : 이름은 CharacterTest

     

    >> Plane 및 Material 생성

    : Plane은 그냥 3D Object로 만듦, Plane을 ProBuilder로 만든 것처럼 구현

    --> Material의 이름은 'Grid', Albedo 및 Tiling 세팅 (Tiling은 Plane의 Scale에 맞춰서 변경)

     

    >> Asset Store에서 3D Game Kit - Character Pack 다운 및 import

    : 3D Game Kit에 전부 다 있지만, 우리는 Character만 필요하기 때문에 이걸로 다운

    https://assetstore.unity.com/packages/3d/3d-game-kit-character-pack-135217

     

    3D Game Kit - Character Pack | 3D | Unity Asset Store

    Elevate your workflow with 3D Game Kit - Character Pack asset from Unity Technologies. Find this & other great 3D options on the Unity Asset Store.

    assetstore.unity.com