본문 바로가기

Unity3D/Tree Creator

Unity 3D Tree Creator

유니티 3D 에서 Tree Creator 를 이용하여 멋진 나무 만들기

참고: https://docs.unity3d.com/Documentation/Components/tree-FirstTree.html



우선 현재 프로젝트에 Tree Creator 패키지를 임포트한다




아래의 창에서 Import 버튼을 누른다



Tree Creator 패키지가 임포트 된 다음에는 GameObject > Create Other > Tree 항목을 선택하여 Scene 뷰에 나무를 하나 추가한다




Scene 뷰에 나무가 보이지 않으면 Hierarchy 뷰에서 Tree노드를 더블클릭하면 Scene 뷰에 나무가 보이게 된다

그리고 추가된 나무는  아래의 그림처럼 Project 뷰에서도 확인되며 Inspector 뷰에는 나무를 생성하기 위한 툴이 배치된다.


위의 그림에서 Hierarchy 뷰의 Tree 를 클릭하면 Inspector 뷰에는 Branch Group과 Tree Root Node 가 보인다

Scene 뷰에 보이는 나무는 가지가 전혀 없는 줄기처럼 보이지만 디폴트로 생성된 하나의 Branch Group 에 속한다

그러므로 디폴트로 생성된 나무는 한개의 가지 그룹을 가지고 있으며 그 그룹 안에 1개의 가지가 있는 구조로 되어 있다.

디폴트로 주어진 Branch 그룹에 다른 Branch 그룹을 추가할 수 있고 또한 추가된 Branch 그룹에 또 다른 Branch 그룹을 추가할 수 있기 때문에 무성한 가지를 가진 나무를 표현할 수 있다.

한개의 Branch 그룹에는 다수개의 가지가 포함될 수 있으며 Frequency를 조정하면 다수개의 가지를 포함하도록 설정할 수 있다


먼저 위의 그림에서 Tree Root Node 를 선택하고 나무가 가지는 전체적인 특성을 설정한다.

Transform 섹션에서 나무의 크기(x, y, z 크기)를 조정

Distribution

 - Tree Seed : 나무의 기본적인 줄기 모양 설정

 - Area Spread : 가지가 옆으로 뻗어 가는 크기를 바닥에 표시되는 노란 원의 크기로 지정

Mesh Renderer

 - Material : 나무에 적용할 재질 이미지 설정



Inspector 뷰에서 디폴트로 생성된 Branch Group 를 선택하고 아래의 항목들을 설정하면 디폴트로 생성된 가지나 추가된 가지의 속성을 변경할 수 있다


Distribution

 - Frequency : 한개의 Branch Group에 포함될 가지의 수

 - Distribution : 가지의 분포(Random, Alternate, Oppsite, Whorled 중 택일), 그래프를 이용하여 분포도를 좀더 세밀하게 조정할 수 있다.

 - Growth Scale : 가지의 크기 설정

 - Growth Angle : 가지가 뻗어가는 각도 설정

Geometry

 - Branch Matrial: 가지에 적용할 재질 이미지 설정

Shape

 - Length : 가지의 최대 크기와 최소 크기 설정

 - Radius : 가지의 굵기 설정

 - Crinkliness : 가지의 모양은 그대로 유지한 채로 크기를 축소한다

 - Seek Sun : 가지의 굴광성의 강도(수치가 높으면 가지들이 위쪽으로만 뻗어 감)

 - Flare Radius : 가지 밑둥의 굵기

 - Flare Height : 가지 밑둥의 높이

 - Flare Noise : 가지 밑둥의 울퉁불퉁한 정도

 - Break Chance : 가지 자르기할 양

 - Break Location : 가지 자르기 위치 설정


Wind

 - Main Wind : 바람에 나뭇가지가 흔들거리는 강도를 설정(일정한 세기로 부는 바람의 세기 설정)

 - Main Turbulence : 불규칙한 세기로 부는 바람의 세기 설정

 - Edge Turbulence : 잎사귀에 부는 바람의 세기

참고: 위의 Main Wind 에 설정한 바람의 세기는 아래에서 소개한 Create Wind Zone 버튼을 누른 후에야 효과가 있음


Create Wind Zone 버튼

 - 이 버튼을 눌러야 특정 영역에서 부는 바람을 설정할 수 있다


새로운 가지 추가

디폴트로 주어진 Branch Group 을 선택하고 아래 그림과 같이 Add Branch Group 아이콘을 누르면 새로운 Branch Group 노드가 생기고 Scene 뷰에도 새로운 가지가 한개 생긴다. Inspector 뷰에 새로 생긴 Branch Group 노드를 선택하고 위에서 설명한 각 속성들을 설정하면 원하는 가지의 수와 형태로 설정할 수 있다.




Leaf Group 추가 나무에 잎사귀를 추가한다

Inspector 뷰에서 잎사귀가 부착될 Branch Group 을 선택하고 Inspector 뷰의 Add Leaf Group 아이콘을 클릭하여 잎사귀 그룹을 추가한다




제 3차 가지에 Leaf Group 이 추가된 상태의 나무 모습(아래)



위의 그림에서 Inspector 뷰의 Leaf Group 을 선택하고 가지를 설정할 때 사용했던 속성들을 조정하여 잎사귀의 빈도(Frequency) 와 재질(Material) 등을 설정하면 된다




게임 장면에서 사용하기

위와 같은 절차를 거쳐 생성된 나무는 게임환경을 구성할 때 사용할 수 있어야 하는데, Terrain 을 생성하고 Tree를 그리는 브러시로 쉽게 많은 나무를 그릴 수 있도록 하려면 Terrain > Create Terrain 으로 Scene 뷰에 지형을 생성하고 Hierarchy 뷰에서 Terrain 을 선택하고 Inspector 뷰에서 Place Trees 버튼을 누르고 Edit Trees... > Add Tree 버튼을 눌러서 위에서 만든 나무를 선택하여 Inspector 뷰에 나무를 추가하고 브러시를 이용하여 Terrain 위에 그리면 브러시가 지나가는 곳에는 위에서 작성한 나무가 그려지게 된다. 


Export 하여 다른 프로젝트에서 사용하기

또한 이 나무를 커스텀 패키지로 Export 하고 나중에 다른 프로젝트에서 Assets > Import Package > Custom Package 를 선택하여 Export할 때 생성된 파일을 선택하면 그 프로젝트에서 사용할 수 있게 된다. 커스텀 패키지로 Export 하려면 Project 뷰에서 위에서 만든 나무 항목을 선택하여 이름을 MyTree 등으로 변경하고 MyTree 위에서 마우스 우측을 누르고 Export Package > Export 버튼을 누르고 저장할 폴더를 선택하고 최종적으로 저장하면 된다.


Export 했던 나무를 새로운 프로젝트에서 임포트하고 Terrain 위해 브러시로 그려주면 위에서 만든 나무가 그려진다