목차
메쉬
Meshes
는 사용자의 3D 작업에 많은 비중을 차지합니다. 사용자는 메쉬를 유니티에서 구축하지 않고 다른 어플리케이션에 구축합니다.
유니티서는 이 과정을 최대한 단순하게 하려고 최선을 다 하였습니다. 더 많은 상세 정보가 있지만 다음에 페이지에 오는 사항들은 일반적은 3D 아트 패키지의 모든 상세사항을 언급하고 있습니다:
다른 어플리케이션
유니티는 _.FBX_, _.dae_ (Collada), _.3DS_, _.dxf_ 그리고 _.obj_ 읽을 수 있으므로, 만일 사용자 프로그램이 이 포맷으로 내보내기가 될 수 있다면 사용자의 작업은 성공적이라고 볼 수 있습니다. 널리 쓰이는 3D 패키지를 위한 FBX 내보내기에 대한 정보는 here에서 찾을 수 있습니다. Collada 내보내기도 많은 패키지를 위해 사용 가능합니다.
텍스처
유니티는 자동으로 사용자가 들여온 장면(scene)에 material을 연결하려고 시도할 것 입니다. 이것을 이용하려면, 사용자의 텍스처를 장면(scene) 파일 옆에 있는 "Textures" 라는 폴더나 혹은 그 상위 폴더 어디에든 두면 됩니다.
들어오기 설정.
3D 메쉬 파일을 위한 Import Settings
을 사용하려면, Inspector
에 나타나는 설정과 관련 설정을 선택하십시오.
_Meshes_ | |
Scale Factor | 유니티의 물리 시스템은 들여온 파일에서 게임월드에서의 1 단위는 1미터라고 가정합니다. 만일 사용자가 다른 단위를 사용하였다면, 여기에서 고치면 됩니다. |
Use File Units | 이 옵션은 오직 3dsMax 파일에서만 사용할 수 있습니다. 이 속성이 켜지면 3dsMax을 1FileUnit=1UnityUnit로 들여오고, 그렇지 않으면 1cm=1UnityUnit으로 들여옵니다. |
Mesh Compression | 이 속성을 올리면 메쉬의 크기가 줄어들게 되고 비일정성(irregularities)이 생길 수도 있습니다. 이 속성을 최대한으로 올리되 메쉬가 비압축 버전보다 크게 다르게 보이지 않는 선까지 올립니다. 이 속성은 optimizing game size 에서도 유용하게 사용됩니다. |
Generate Colliders | 이 속성이 켜지면, 사용자의 메쉬는 메쉬 콜라이더(Mesh Colliders )가 자동 부착된 채 들여올 것 입니다. 이것은 환경기하에서 콜리전(collision) 메쉬를 빠르게 생성할 대 유용하나, 사용자가 이동해야 할 지리에서는 피하여야 합니다. 더 자세한 정보를 보려면, 아래 Colliders를 참조하십시오. |
Swap UVs | 만일 라이트맵(lightmapped) 오브젝트가 잘못된 UV 채널을 선택할 때 사용합니다. 이는 사용자의 주요 및 보조 UV 채널을 맞교환 합니다. |
Generate Lightmap UVs | 라이트매핑(Lightmapping)에 사용 될 UV2을 생성하는 데 사용합니다. |
»>Advanced Options | Lightmapping UVs document을 참조하십시오. |
_Normals & Tangents_ | |
Normals | 노멀(normal,)이 만일 또는 어떻게 계산 될지를 설정합니다. optimizing game size을 위해 유용합니다. |
»>Import | 디폴트 옵션으로, 파일로부터 normal을 들여옵니다. |
»>Calculate | Smoothing angle를 기준으로 노멀을 계산합니다. 이 속성이 선택되면, Smoothing angle이 켜 집니다. |
»>None | Tangents와 binormals 속성을 끕니다. 이 메쉬는 Tangents를 가지지 않으므로, 노멀맵 쉐이더(normal-mapped shaders)와는 작동하지 않습니다. |
Tangents |
콜라이더(Colliders, 충돌자)
유니티에는 두 가지 성질의 주요 콜라이더가 있습니다: Mesh Colliders
와 Primitive Colliders로, 메쉬 콜라이더는 들여온 메쉬 데이터를 사용하는 컴포넌트로 주변 환경의 충돌에 사용할 수 있습니다. 사용자가 들여오기 설정에서
Generate Colliders$$ 속성을 켜면, 메쉬 콜라이더는 해당 장면에 메쉬가 추가 될 때 메쉬 콜라이더는 자동으로 추가 되며, 물리 시스템 상으로는 단단한 성질로 간주 됩니다.
만일 사용자가 오브젝트를 움직인다면 (예를 들면 자동차 같은 경우), 메쉬 콜라이더는 움직일 수 없습니다. 그 대신 사용자는 프리미티브 콜라이더를 사용하여야 합니다. 이 경우, 사용자는 Generate Colliders 설정을 꺼야 합니다.
Animations
애니메이션은 장면으로부터 자동적으로 들여오기가 실행됩니다. 애니메이션 들여오기 옵션에 대한 더 자세한 정보를 보려면 Animation Import 장을 참조하세요.
노멀맵핑과 문자
사용자가 하이 폴리곤(high-polygon) 버전의 모델에서 생성된 노멀 맵(normal map)의 문자를 가지고 있다면, 사용자는 Smoothing angle 를 180도로 하는 게임 품질 버전(game- quality version)을 들여쓰기 해야 합니다. 이렇게 하면 tangent splitting로 인해 조명에서 경계(seam)가 이상하게 보이는 것을 방지할 수 있습니다. 해당 경계(seam)가 이렇게 해도 보인다면, Split tangents across UV seams을 켜야 합니다.
흑백 이미지를 노멀 맵으로 전환 중이라면, 이러한 문제는 관련이 없습니다.
Hints
- 사용자의 메쉬들은 가능한 많이 합치십시오. 메쉬끼리 머티리얼과 텍스처를 공유하게 하면, 엄청난 성능 혜택이 있을 것 입니다.
- 사용자가 유니티에서 사용자 오브젝트를 더 설정해야 한다면 (물리(physics) 추가, 스크립트 혹은 다른 coolness), 사용자의 3D 어플리케이션에서 의미 있는 이름을 사용하여 혼선을 피하십시오. 많은 수의 pCube17 혹은 Box42같은 오브젝트로 작업을 하는 것은 상당히 힘들어질 수 있습니다.
- 사용자의 3D 응용 프로그램에서 사용자 메쉬가 월드 오리진 상의 중심에 위치하도록 하십시오. 이렇게 하면 유니티에서 손쉽게 이들을 배치할 수 있습니다.
유니티 편집기는 너무 많은 삼각형을 보여준다(사용자의 3D 응용 프로그램 보다)
옳은 말 입니다. 사용자가 보는 것은 실제로 랜더링을 위해 OpenGLES로 보내지는 삼각형의 수입니다. 머티리얼이 그것을 두 번 보내야 하는 경우 등 뿐만 아니라 하드-노멀이나 비인접 UV 증가(non contiguous UV increase) 꼭지점/삼각형(vertex/trangle)도 모델 응용프로그램이나 유니티가 사용자에게 이야기하는 것보다 훨씬 상당합니다. 삼각형(Triangles)은 3D와 UV 공간 모두 스트립(strip)을 형성하려면 인접성이 있어야 합니다. 그러므로 사용자가 UV 경계를 가진다면, 퇴보 삼각형(degenerate triangle)이 스트립으로부터 만들어져야 합니다 – 이것 또한 숫자를 증가시킵니다. 이전에는 유니티가 삼각형의 수를 부정확하게 보고했었습니다. 이 숫자는 실행 시 첫째로 정정되고, 편집기에도 최근에 정정되었습니다. 이제 둘 다 랜더링을 위하여 OpenGLES로 *실제로* 보낸 삼각형의 숫자를 정확하게 보고합니다.
추가 참조
- 출처: 유니티코리아위키 (CC BY-NC-SA 2.0)