문서 편집

메쉬들 Meshes

모든 3D 게임들의 핵심에는 텍스쳐가 적용된 삼각형으로 이루어진 오브젝트인 Meshes 가 있습니다.

유니티의 메쉬들은 렌더러 renderer 컴포넌트들로 렌더됩니다. 거기에는 다양한 종류가 있지만 Mesh Renderer가 가장 많이 쓰입니다.

  • 렌더러 renderer 는 게임오브젝트 GameObject의 위치에 메쉬를 표시합니다.
  • 메쉬의 외관은 렌더러의 재질 Materials로 조정됩니다.


Mesh FilterMesh Renderer는 함께 모델이 화면에 보이게 만듭니다.

Meshes는 사용자의 3D 작업에 많은 비중을 차지합니다. 사용자는 메쉬를 유니티에서 구축하지 않고 다른 어플리케이션에 구축합니다.

유니티서는 이 과정을 최대한 단순하게 하려고 최선을 다 하였습니다. 더 많은 상세 정보가 있지만 다음에 페이지에 오는 사항들은 일반적은 3D 아트 패키지의 모든 상세사항을 언급하고 있습니다:

다른 어플리케이션

유니티는 _.FBX_, _.dae_ (Collada), _.3DS_, _.dxf_ 그리고 _.obj_ 읽을 수 있으므로, 만일 사용자 프로그램이 이 포맷으로 내보내기가 될 수 있다면 사용자의 작업은 성공적이라고 볼 수 있습니다. 널리 쓰이는 3D 패키지를 위한 FBX 내보내기에 대한 정보는 here에서 찾을 수 있습니다. Collada 내보내기도 많은 패키지를 위해 사용 가능합니다.

텍스처

유니티는 자동으로 사용자가 들여온 장면(scene)에 material을 연결하려고 시도할 것 입니다. 이것을 이용하려면, 사용자의 텍스처를 장면(scene) 파일 옆에 있는 "Textures" 라는 폴더나 혹은 그 상위 폴더 어디에든 두면 됩니다.


해당 에셋 혹은 그 상위 레벨 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 CollidersPrimitive 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 Attribution-Noncommercial-Share Alike 4.0 International 별도로 명시하지 않을 경우, 이 위키의 내용은 다음 라이선스에 따라 사용할 수 있습니다: CC Attribution-Noncommercial-Share Alike 4.0 International
923 B unity/class-fbximporter.txt · 마지막으로 수정됨 2018/02/22 11:34 (바깥 편집)

0.048 seconds in processing this page on this powerful server.